Je cherche à vérifier le bon format d'une cellule je m'expliques:
La cellule devrait ressembler a ça : Lettre = L , Chiffre = C
Cellule = LLLC-LCCCCC
En gros je veux tester si il y a bien 3 lettre et un chiffre en début de cellule, juste apres vérifier qu'il y a bien un tiret, puis une lettre obligatoire et 5 chiffres juste apres. Je précise que je veux pas pour le moment verifier le contenu de ces lettres ou chiffres. Quoique ^^.
Je ne sais pas si j'ai été assez claire? Je suis un novice en macro ou formule excel.
Merci d'avance pour ceux qui traineront sur mon post =)
Je te propose une méthode bien bourrine qui vérifie la cellule B17 dans mon exemple. Macro exécutée sous Excel 2003.
Sub Verif()
Range("b17").Select
' ### recuperation des valeurs en portions du style ABC7-X74815
caracteres1to3 = Mid(ActiveCell.Value, 1, 3) 'doivent etre des lettres
caractere4 = Mid(ActiveCell.Value, 4, 1) 'doit etre un chiffre
caractere5 = Mid(ActiveCell.Value, 5, 1) 'doit etre un tiret
caractere6 = Mid(ActiveCell.Value, 6, 1) 'doit etre une lettre
caracteres7to11 = Mid(ActiveCell.Value, 7, 5) 'doivent etre des chiffres
If (Not IsNumeric(caracteres1to3)) _
And IsNumeric(caractere4) _
And caractere5 = "-" _
And (Not IsNumeric(caractere6)) _
And IsNumeric(caracteres7to11) _
And Len(ActiveCell.Value) <= 11 Then
MsgBox "Format conforme"
Else
MsgBox "Format non conforme"
End If
End Sub
La condition vérifie que les 3 premiers caractères soient des lettres, que le 4ème caractère soit un chiffre, que le 5ème soit un tiret, que le 6ème soit une lettre, que les caractères de 7 à 11 soient des chiffres et que le contenu de ta cellule n'excède donc pas les 11 caractères. Si tout ça est bon alors c'est conforme sinon ça ne l'est pas.
Ce n'est qu'une ébauche qu'il faut bien sûr travailler. J'imagine qu'il y a plus simple mais si peut te dépanner en attendant.
Le Kansas City Shuffle.. c’est quand tout le monde regarde à gauche et que tu vas à droite.
merci beaucoup! j'ai trouvé une réponse sur un autre forum qui peut t'interesser ou tout du moins tu va pouvoir comparé a la tienne
Function verifier_format(texto As String) As Boolean
Dim reg As Object
Dim verif As Object
Set reg = CreateObject("vbscript.regexp")
reg.Global = False
'admet les majuscules
reg.IgnoreCase = True
reg.Pattern = "^[a-z]{3,}[0-9]+[-][a-z]{1,2}[0-9]{5}$"
Set verif = reg.Execute(texto)
verifier_format = (verif.Count = 1)
Set verif = Nothing
Set reg = Nothing
End Function
Une expression régulière, oui pourquoi pas.
C'est vrai que c'est moins prise de tête mais faut savoir maîtriser (pas tout à fait mon cas).
Le Kansas City Shuffle.. c’est quand tout le monde regarde à gauche et que tu vas à droite.
excel: verifier le si une cellule respecte bien un format
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Le Kansas City Shuffle.. c’est quand tout le monde regarde à gauche et que tu vas à droite.
Le Kansas City Shuffle.. c’est quand tout le monde regarde à gauche et que tu vas à droite.