XL 2016 generateur d ID incrementiel avec date

kontractor08

XLDnaute Nouveau
Bonjour à tous (tes)

je viens vers vous et vos connaissances.
j ai besoin de créer un identifiant reprenant la date du jour et s incrémentant d un nombre à chaque fois que je scannerai un code barre.

ex:
date du jour 24/05/2020
premier numéro 0001

format attendu 202005240001
202005240002 etc...

Vous remerciant par avance
 

JHA

XLDnaute Barbatruc
Bonjour à tous,

Avec le peu d'information et le manque de fichier exemple, ci joint un exemple de création de numéro "ID" par formule.

Attention, avec la fonction aujourdhui(), toutes les ID changeront de date demain, le mieux est de mettre une date en "dur" exemple 1

JHA
 

Pièces jointes

  • Classeur exemple ID.xlsx
    10.2 KB · Affichages: 15
Dernière édition:

cp4

XLDnaute Barbatruc
Bonjour Konractor08, JHA,

à partir d'un userform à adapter
VB:
 With Sheets("vente") 'dans la feuille vente on utilise la fonction Max pour le n°
      Me.TextBox2 = Application.WorksheetFunction.Max( _
                    Format(Date, "yymmdd") & "0000", _
                    .Range("b2:b" & .Range("b" & .Rows.Count).End(xlUp).Row)) _
                    + 1
   End With
 

kontractor08

XLDnaute Nouveau
Bonjour tous le monde et merci de votre intérêt pour mon soucis
@JHA déjà un grand merci à toi
je vais essayer de vous décrire au mieux mes besoins
je vous joint cette fois-ci mon ébauche de fichier

cet en fait un fichier qui permettra à ma conjointe qui travaille et met en place la recherche sur le COVID au CHU et à la FAC de pouvoir lister les bilans de résultats COVID pour signature du directeur de laboratoire

je comptait ensuite créer un formulaire pour une saisie plus dirigée et éviter les erreurs de saisie.

l'équipe va recevoir chaque jour des listes de code barre du CHU (colonne A étant les chiffre générés par chaque code barre)
chaque code barre pour un patient testé
ce scan devra générer la date d'arrivée du prélèvement avec l'heure figés au moment du scan (déjà codé)
puis le scan devra en même temps générer un ID PATIENT FAC sous la forme yyyymmdd0001 yyyymmdd0002 etc.... (colonne C)

puis lors de la sélection dans la liste déroulante colonne J,
la colonne F "date de rendu du résultat" devras faire elle aussi apparaître la date et l'heure figés comme en colonne C

j'espère avoir été un peu plus précis dans ma demande
un grand merci encore
 

Pièces jointes

  • Formulaire COVID19.xlsm
    25.4 KB · Affichages: 9

kontractor08

XLDnaute Nouveau
Bonjour Konractor08, JHA,

à partir d'un userform à adapter
VB:
 With Sheets("vente") 'dans la feuille vente on utilise la fonction Max pour le n°
      Me.TextBox2 = Application.WorksheetFunction.Max( _
                    Format(Date, "yymmdd") & "0000", _
                    .Range("b2:b" & .Range("b" & .Rows.Count).End(xlUp).Row)) _
                    + 1
   End With

Merci pour ta réponse rapide
Mais ou dois-je coller ton code si gentillement fournit ?

Merci
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour @kontractor08 , @cp4 , @JHA, Le Forum

Si cette petite contribution peut un tant soit peu aider dans la recherche pour zigouiller cette saloperie de Covid19...

Je suis resté sur ta Feuille en macro évenementielle "Worksheet_Change".

Si tu as besoin d'aide, n"hésite pas
Bien à toi, à vous, aux équipes de recherches !
@+Thierry
 

Pièces jointes

  • XLD_kontractor08_Formulaire_COVID19_v01.xlsm
    20.6 KB · Affichages: 14

kontractor08

XLDnaute Nouveau
Bonjour @kontractor08 , @cp4 , @JHA, Le Forum

Si cette petite contribution peut un tant soit peu aider dans la recherche pour zigouiller cette saloperie de Covid19...

Je suis resté sur ta Feuille en macro évenementielle "Worksheet_Change".

Si tu as besoin d'aide, n"hésite pas
Bien à toi, à vous, aux équipes de recherches !
@+Thierry

Merci de t'être décarcassé pour ce projet je viens de le transmettre au labo qui en est très satisfait
un grand merci à tous
 

kontractor08

XLDnaute Nouveau
Re bonjour à tous
j ai de nouveau besoin de vos connaissances

j'ai après la demande du laboratoire dû créer un Useform pour des raisons de sécurité de saisie des données de tests COVID19


Mais je n'arrive pas lors de la saisie des données dans le formulaire, lorsque j'appui sur le bouton VALIDER, à incrémenter ID PATIENT CHU de +1

ex: format yyyymmdd0001
yyyymmdd0002
yyyymmdd0003
et ainsi de suite a chaque validation


mon 2è soucis qui semble très bête est de faire fonctionner le bouton effacer la dernière ligne du tableau (bouton Jaune)

la procédure doit fonctionner pour samedi matin au plus tard, vous comprendrez donc mon soucis

cordialement
 

Pièces jointes

  • FORMLAIRE COVID V5 .xlsm
    95 KB · Affichages: 6

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonjour @kontractor08 , le Forum

Donc tout a changé ? Plus rien ne correspond à ce qui a été développé !
Maintenant c'est le ID PATIENT CHU qui doit s'incrémenter de 0001, 0002 etc...
Plus le ID PATIENT FAC ? (Ou bien les deux ???)

Il n'y a plus d'action de Scan qui remplit le barcode en colonne A ?

Que ou quoi déclenche le show du UserForm1

Que doit on mettre dans la ComboBox2 :
.AddItem "GLENET MARIE"
.AddItem "Personne x"
.AddItem "Personne y"
.AddItem "Personne z"
Je suppose que ce n'est pas ça ?

Comment et quoi récupère t'on le début du contenu de la TextBox1 (ID PATIENT CHU) avant de pouvoir l'incrémenter par 0001 + 1.

Même question pour TextBox2 (ID PATIENT FAC) avant de pouvoir l'incrémenter par 0001 + 1.

Il y a combien de Tableaux (SERIE A, SERIE B.... ?) et lequel sert dans le UserForm1 ? (Ou si plusieurs ?)

Bouton Valider & Suivant... on envoie les données où et dans quel tableau ?

Bouton Effacer dernière ligne, à partir de quel critère et sur quel Tableau ?

Bouton Effacer Tableau, quel tableau ?

Pour les autres boutons et codes, même pas j'ai regardé Import Run et CSX Biorad... Car ça n'a rien à voir avec ton problème.

Là il ne faut pas paniquer, je pense que personne ne peut comprendre ce que tu demandes, même si c'est urgent !

Bien à toi, à vous
@+Thierry
 

kontractor08

XLDnaute Nouveau
Alors pour le tableau de la feuille SERIE A
ce tableau est renseigné par l' Useform1 après click sur le bouton VALIDER ET SUIVANT

la colonne C code barre sont des celulles vides ou seront collées des étiquettes une fois la feuille imprimée
la colonne D ID PATIENT CHU (textbox1) recoit le scan du code barre ce qui declenche la génération de l'ID PATIENT FAC (textbox2) et DATE DU PRELEVEMENT (textbox3)
la colonne E ORIGINE est renseigné par la selection dans la liste (combobox1)
La colonne F DATE DU PRELEVEMENT est renseigné par la selection dans la liste (textbox3)
le reste du tableau lui sera renseigné après la génération d autre fichier déjà paramètrés sur les boutons Import Run et CSX Biorad (déjà fonctionnels)


Que doit on mettre dans la ComboBox2 :
.AddItem "GLENET MARIE"
.AddItem "Personne x"
.AddItem "Personne y"
.AddItem "Personne z"

Non effectivement ce ne sont pas les bonnes données mais je sais les modifier si besoin

Comment et quoi récupère t'on le début du contenu de la TextBox1 (ID PATIENT CHU) avant de pouvoir l'incrémenter par 0001 + 1.

on ne récupère rien de cette textbox1 à part le fait quelle ne soit pas vide après scan ce qui déclenche la génération de l'ID PATIENT FAC sous forme yyyymmdd0001 incrémenté +1 à chaque validation du formulaire avec le bouton VALIDER ET SUIVANT


Bouton Effacer dernière ligne, à partir de quel critère et sur quel Tableau ?
 

kontractor08

XLDnaute Nouveau
Bouton Effacer dernière ligne, à partir de quel critère et sur quel Tableau ?


ce bouton si possible devra pouvoir supprimer la dernière ligne du tableau de la feuille SERIE A
en cas d erreur de saisie


Bouton Effacer Tableau, quel tableau ?

lui il devra juste effacer les ligne du tableau ou juste leur contenu car il est lié par une formule avec la feuil CSX_BIORAD


j 'espère avoir pu vous donner assez d'informations et vous remercie encore par avance
 

kontractor08

XLDnaute Nouveau
pour les valeur des codes barres scannés voici de exemple

20144161703
20144144703
20144152703
20145002503
20145004502
20145004402
20144137403
20144144102
20144144002
20144132303
20144144203
20144137302
20145056102
20145055902
20145055502
20144112203

ces valeurs numérique sorte directement du scan avec la douchette a code barre et s inscrivent bien dans la textbox de l useform

donc en faite la formule des ID PATIENT FAC ne fonctionne pas bien
car elle ne s’incrémente pas actuellement d après ce que j ai tenté d adapter pour l useform(j suis très novice)
lors de l'ouverture du fichier excel il faudrait que lorsque l on commence à remplir le formulaire

ID PATIENT FAC s affiche ou alors avec le contrôle de valeur d une textbox peu importe
du moment ou l appui sur le bouton valider incrémente cette valeur de +1( yyyymmdd0001 +1)

donc lorsque j appui sur VALIDER le tableau remplit bien la première ligne du tableau mais en revanche il rempli ensuite la derniere ligne de tableau créé lors de la dernière saisie ( si 30 ligne créées la veille le bouton rouge effacer doit supprimer toute les lignes et ne laisser que la première avec contenu effacé)
c est la seule façon que j ai trouvé pour que le formulaire créé bien une nouvelle ligne lors de la saisie au lieu de passer les 30 lignes vides et de continuer a la suite
ou avec des xlUP etc je ne sais pas vraiment j ai des connaissance vraiment limités dans ce domaine
 

Pièces jointes

  • exemple de saisie.jpg
    exemple de saisie.jpg
    175.6 KB · Affichages: 5

_Thierry

XLDnaute Barbatruc
Repose en paix
Bonsoir @kontractor08

J'ai rétabli ce que j'avais développé dans le Post#7 afin que ca fonctionne avec ton Userform...
Par contre j'ai trop d'incohérences pour comprendre l'inter-action pour l'ordre de déroulement des actions pour aller plus loin.

@+Thierry
 

Pièces jointes

  • XLD_kontractor08_Formulaire_COVID19_v02.xlsm
    81.1 KB · Affichages: 7

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 144
Membres
103 129
dernier inscrit
Atruc81500