Formule et code VBA
Résolu
Bonjour
J'ai un formulaire que j'ai créé mais j'ai du problème sur le code vba
Colonne A date, colonne B numéro de l'image Colonne E nom de l'opérateur, colonne F heure début du traitement et colonne G heure fin du traitement et colonne H total heure du traitement
Lors de la fin de la saisie donc, il y aura une plus d'un enregistrement selon le nombre de dossier que la personne a pris
- Pour la No Image, j'aimerai que ce soit un numéro suivi un énumération
par exemple si dans la formulaire
je saisie 1 à 10, il y a une insertion automatique de 10 lignes suivi du nom ainsi que l'insertion automatique de la date et heure aussi
ou même chose si on cite le numéro début plus le nombre par exemple le n° débute à 100 pour 15 images par exemple donc 101, 102 à 115.
- Pour l'heure fin
Lorsque je saisisse un nom par exemple toutes les lignes qui sont concernées seront remplies d'heure fin
- Pour la recherche
Lorsque je mets un numéro sur la case recherche, la personne qui l'avait fait s'affiche sur le résultat.
Merci pour votre aide
Ci-joint mon fichier
https://we.tl/t-cpy4nDTvUf
J'ai un formulaire que j'ai créé mais j'ai du problème sur le code vba
Colonne A date, colonne B numéro de l'image Colonne E nom de l'opérateur, colonne F heure début du traitement et colonne G heure fin du traitement et colonne H total heure du traitement
Lors de la fin de la saisie donc, il y aura une plus d'un enregistrement selon le nombre de dossier que la personne a pris
- Pour la No Image, j'aimerai que ce soit un numéro suivi un énumération
par exemple si dans la formulaire
je saisie 1 à 10, il y a une insertion automatique de 10 lignes suivi du nom ainsi que l'insertion automatique de la date et heure aussi
ou même chose si on cite le numéro début plus le nombre par exemple le n° débute à 100 pour 15 images par exemple donc 101, 102 à 115.
- Pour l'heure fin
Lorsque je saisisse un nom par exemple toutes les lignes qui sont concernées seront remplies d'heure fin
- Pour la recherche
Lorsque je mets un numéro sur la case recherche, la personne qui l'avait fait s'affiche sur le résultat.
Merci pour votre aide
Ci-joint mon fichier
https://we.tl/t-cpy4nDTvUf
46 réponses
Résumé de la discussion
Un formulaire VBA gère l'enregistrement de dossiers d'images: A date, B numéro de l'image, E nom de l'opérateur, F heure début, G heure fin et H total heure, et génère plusieurs enregistrements selon les dossiers. Des solutions clés couvrent l’incrémentation automatique des numéros d’image (par exemple 1 à 10 ou 101 à 115) et le remplissage des dates et heures, et déclenchent l’heure fin dès la saisie du nom. Des ajustements pratiques abordent également la recherche par numéro, le filtrage et l’interface utilisateur, avec des recommandations sur la compatibilité Windows 32 bits, la barre de défilement et la mise en forme des heures.
-
-
Bonjour Via
J’espère que vous allez bien.
J'avais une autre demande si cela ne vous dérange pas :
J'ai un fichier excel qui a pour but de compter le nombre de dossiers traités par chaque personne
et j'aimerai le faire avec VBA dont
l'objectif est de compter, de lister le numéro au début (Numéro séparer au nom de dossier par "- espace) de chaque dossier que la personne a fait, puis le nom du dossier sur une autre liste sur le userform
puis le nom de la personne dans le champ résultat et le nombre des dossiers traités sur le champ résultat.
J'ai mis quelques captures pour mieux expliquer et aussi le fichier excel dont vous trouverez ci-après le lien :
https://mon-partage.fr/f/3i4Gctw7/
Merci pour votre aide
Bonne continuation -
merci beaucoup Via
C'est ce que je voulais vraiment
Merci, je vous souhaite une excellente journée.
Cordialement. -
Bonjour Christian
En ce cas il suffit de mettre en E2 la formule =B2+1, de mettre cette cellule au format personnalisé [h]:mm:ss puis d'étirer la formule au bas du tableau
Cdlmnt
Via
-
Bonjour Via
Ce n'est pas différence mais j'aimerai afficher sur la colonne F
2:00:00 en 26:00:00 par exemple
toutes les heures à partir de 00:00:00 donc
après 23:59, 24:00:00, 25:00:00, 26:00:00 ainsi de suite
car j'aurai besoin de ces données sur un autre fichier et que ce soit l'heure de la colonne B ou C
si c'est possible une formule pour que cette affichage
Merci
CDT -
Re
Je ne comprends pas ce que tu cherches à obtenir
En F tu veux calculer la différence entre heure de fin et et heure de début et cumuler d'une ligne sur l’autre, même si ce n'est pas le même matricule ?
-
oui, j'ai essayé tout cela mais le problème l'heure est déjà affichée en 00:00:10 par exemple sur un fichier, donc pour le changement je devrais changer manuellement chaque ligne
or il y en a beaucoup.
Ma demande si c'est possible une formule pour cette affichage sur la colonne E une
formule pour que l'heure continue en 24 jusqu'à n sans que les minutes et secondes ne changent pas.
Je vous joins le fichier s'il vous plait.
https://mon-partage.fr/f/xtv49hWR/
merci
Cordialement. -
Bonjour Christian
Pour qu'une celluleaffiche les heures au delà de 24 h il faut la mettre en format personnalisé [h]:mm:mm (aller dans le ruban à Nombre - Autres formats numériques)
Cdlmnt
Via
-
Bonjour Via
Bonne année, tous mes meilleurs vœux.
J'aimerai poser une question si ça ne vous dérange pas,
J'ai un tableau excel dont il y a un affichage d'heure.
J'aimerai que l'heure en plus de 24h s'affiche par exemple :
00:10:10 en 24:10:10
1:15:30 en 25:15:30
2:00:00 en 26:00:00
Aurait-il une formule par exemple pour cette conversion ?
Merci pour votre aide
Cordialement -
Bonjour
Merci quand même Via
Bonne journée.
CDT -
Bonjour Christian
Tu me dérange pas
Malheureusement le fichier est endommagé et je ne peux rien faire, ce n’est pas de mon ressort
Regarde les solutions ou lociel proposés ur le net
ex : https://www.astuces-aide-informatique.info/6888/reparation-fichier-excel
Cdlmnt
-
Je vous remercie
c'est résolu donc
Merci beaucoup Via
A bientôt
Bonne soirée-
Bonjour Via
Désolé de vous déranger de nouveau, j'ai un petit problème, lors de l'enregistrement du fichier, je crois qu'il y avait un coupure d'alimentation et celui-ci est endommagé, j'aimerai si vous pouvez récupérer les données du jeudi 10 jusqu'à hier ou le fichier tout entier si c'est possible
Je vous joins le fichier et je vous remercie d'avance pour votre aide :
https://mon-partage.fr/f/K1zyKxLm/
Cordialement
-
-
Au temps pour moi ! je n'avais pas compris que tu voulais te positionner en bas
Alors pour se positionner 8 lignes plus bas que la dernière entrée :
Range("A" & Columns(1).Find("*", , , , xlByColumns, xlPrevious).Row + 8).Select
-
Merci, j'ai trouver le mdp
j'ai essayé cette code pour afficher toujour la dernière ligne remplie
mais celane montre pas, est ce que vous pouvez le modifier ?
Range("A18").Select For n = 8 To Sheets("ADV35").Range("a65536").End(xlDown).Select.show Next
le but c'est de trouver la dernière ligne remplie puis l'afficher sur l'ecran plus 8 lignes vides ou moins par exemple
après chaque insertion
Encore merci Via -
Que veux dire par l'autre lot de passe ? il n'y en a qu'un
Dans les macros on le trouve dans celle associée au bouton Valider et dans celle associée au bouton Heure fin puisque ce sont celles qui écrivent dans la feuille
-
Merci beaucoup Via
Ca ira comme ça, mais j'aimerai tout simplement savoir le où se trouve l'autre mot de passe pour ôter la protection à partir de l'onglet proteger feuille.
Merci
CDT -
Bonjour christian
Pas de souci !
La feuille est protégée par le mot de passe admin, les colonnes étant au préalable verrouillées
Dans les macros où il faut inscrire dans la feuille une ligne déprotège d'abord la feuille puis une autre la reprotège à la fin
Si tu veux changer le mot de passe il faut le modifier dans ces 2 lignes dans les 2 macros
En fin de macro on repositionne sur la cellule A1, ainsi tu n'as pas le bas de tableau visible
Enfin j'ai shunté ta macro qui verrouillait les cellules et qui faisait bugguer, il n'y a plus besoin puisqu'à défaut lex colonnes sont verrouillées et la feuille protégée
https://mon-partage.fr/f/Sm1DoYSg/
Cdlmnt
Via
-
bonjour Via, désolé de vous déranger de nouveau
j'ai fait quelques modifications, et je ne parviens pas
ma demande c'est de :
- mettre un mot de passe pour verrouiller les cellules remplies mais la mise en fome du tableau reste
pour chaque insertion à partir du formulaire, j'ai déjà mis un code mais cela ne marche pas
- lorsqu'il y a une insertion, la dernière remplie se positionne toujours sur la ligne où j'ai colorisé en rouge sur le fichier joint, donc à peu près 3/4 de l'écran ou on voit des lignes vides en bas
https://mon-partage.fr/f/0MawNane/
Je vous remercie pour votre aide, et encore navrés de vous déranger à cette heure ci.
Cordialement. -
Bonjour
Je n'arrive pas à faire fonctionner ton fichier, les macros ne trouvent pas les UF !
Quoiqu'il en soit en relisant le code je pense qu'il faut que tu effectues les manips suivantes :
Dans la macro associée au bouton Filtrer de l'UF filtre :
- Dans la ligne :
For n = 2 To Range("A65536").End(xlUp).Row
changer le 2 en 18 puisque ton tableau commence à cette ligne
- Changer la ligne
Range("BB1") = Range("BB1") + Range("F" & n)
en totheures=totheures + Range("F" & n)
- changer la ligne
Me.total_heures = Round(Range("BB4"), 2)
en
Me.total_heures = totheures
Cdlmnt
Via -
Bonjour
Désolé de vous déranger de nouveau,
actuellement le formulaire marche bien mais
j'ai un petit problème
j'ai dû ajouter des lignes en haut pour faciliter le lancement des deux boutons
mais pour le userform filtre et recherche, beaucoup de choses ne marchent pas et sur ce
même userform, j'aimerai que pour le total heure après filtre c'est le total
des filtres de la colonne G pour qu'il n'y a pas de doublons qui gonfle l'heure de traitement
Pouvez vous m'aider s'il vous plait.
Merci
Ci-joint le fichier après modification
https://mon-partage.fr/f/ovKTymo7/
Cordialement
- 1
- 2
- 3
Suivant