coco_lapin
XLDnaute Impliqué
Bonjour le forum,
Je voudrais détecter les mots dont le premier caractère est une lettre et les 3 suivants des nombres.
J’ai réalisé la macro en annexe qui fonctionne mais qui n’est pas optimisée en terme de rapidité. Je joins aussi le classeur exemple.
Je suis preneur si vous voyez d’autres architectures.
Merci pour votre aide.
Je voudrais détecter les mots dont le premier caractère est une lettre et les 3 suivants des nombres.
J’ai réalisé la macro en annexe qui fonctionne mais qui n’est pas optimisée en terme de rapidité. Je joins aussi le classeur exemple.
Je suis preneur si vous voyez d’autres architectures.
Merci pour votre aide.
Code:
Sub essais()
Dim var1 As String
Dim var2 As String
Dim var3 As String
Dim var4 As String
Dim var5 As String
Columns(4).ClearContents
For i = 1 To 6
Lettre = 0
Chiffre2 = 0
Chiffre3 = 0
Chiffre4 = 0
var1 = Left(Cells(i, 3), 1)
For j = 1 To 26
If var1 = Cells(j, 6) Then
Lettre = 1
Exit For
End If
Next j
var2 = Right(Left(Cells(i, 3), 2), 1)
var3 = Right(Left(Cells(i, 3), 3), 1)
var4 = Right(Left(Cells(i, 3), 4), 1)
For j = 1 To 9
var5 = Cells(j, 7)
If var2 = var5 Then
Chiffre2 = 1
Exit For
End If
Next j
For j = 1 To 9
var5 = Cells(j, 7)
If var3 = var5 Then
Chiffre3 = 1
Exit For
End If
Next j
For j = 1 To 9
var5 = Cells(j, 7)
If var4 = var5 Then
Chiffre4 = 1
Exit For
End If
Next j
If Lettre = 1 And Chiffre2 = 1 And Chiffre3 = 1 And Chiffre4 = 1 Then
Cells(i, 4) = "Oui"
End If
Next i
End Sub