Création d'un code unique
Bonjour,
C'est à nouveau moi, problème un peu plus complexe cette fois ^^' (enfin c'est relatif).
Je veux créer un code unique à partir d'une date et d'une heure et y incrémenter un chiffre à chaque fois, on m'a dit d'utiliser la fonction split mais ne la connaissant que très peu serait-il possible d'obtenir un code qui permette:
- D'enlever les "/" et ":" de l'heure et la date (qui sont dans 2 cases différentes).
- Mettre le résultat obtenu dans une case (disons G2).
- Ajouter +1 à chaque fois ?
Le but est d'obtenir quelque chose comme ceci : 010310(date)1055(heure)1(incrément).
Merci
Bonjour,
dans ton message tu ne spécifiais pas si tu voulais une formule ou en vba,
voici un petit exemple en vba:
Public Sub Get_CodeUnique()
Dim CelluleResultat As Range
Set CelluleResultat = Sheets("Feuil1").Range("G2")
Dim Resultat As String
If Not CelluleResultat = "" Then
Dim AncienCode As String
AncienCode = Left(CelluleResultat, 12)
If AncienCode = Format(Date, "ddmmyy") & Format(Time(), "hhmmss") Then
Dim AncienIncrement As String
AncienIncrement = Right(CelluleResultat, 1) + 1
Resultat = Format(Date, "ddmmyy") & Format(Time(), "hhmmss") & AncienIncrement
Else
Resultat = Format(Date, "ddmmyy") & Format(Time(), "hhmmss") & "1"
End If
Else
Resultat = Format(Date, "ddmmyy") & Format(Time(), "hhmmss") & "1"
End If
CelluleResultat = Resultat
End Sub
j'ai ajouté les secondes au code unique, tu auras rarement besoins d'un increment. À chaque fois que la procedure est lancé, on teste si un code existe en G2, si oui, on teste si le jour-mois-année-heure-minute-seconde est pareil à celui du système. Si oui on incremente de 1 le dernier chiffre.
EDIT
J'ai mal lu ton post, je reviens avec une réponse
-- Lun Mar 01, 2010 9:57 am --
Désolé, peux-tu envoyé un exemple du genre de fichier que tu veux faire, j'ai de la difficulté à me figurer la façon que tu veux procéder.
Bonsoir !
Merci pour le code, je le test demain et je vais tenter de t'envoyer un fichier pour t'aider ! (merci de la réponse et de l'aide que tu m'apportes !).