VBA - Vérifier les 4 derniers caractères

Bonjour à tous,

Je viens sur ce forum afin de trouver de l'aide après des heures et des heures de recherche...

Mon problème est le suivant :

J'ai codé une partie en VBA qui me permet de trouver s'il y a des doublons ou des erreurs dans ma feuille Excel.

Ce code me permet dans un premier temps de sélectionner la colonne que je désire et vérifier si le champ de texte possède seulement 8 caractères.

Ensuite j'ai fait des validations par couleurs :

En vert si cela est OK.

En Rouge si cela à quelque chose de faux (P.Exemple: 9 caractères).

En Orange s'il y a des doublons, donc deux fois le même champ de texte.

Ce que je n'ai pas réussi à réaliser c'est le suivant:

Comment vérifier seulement les 4 derniers caractères de mon champ?

Exemple :

{Vert}(OK)

TE170001

RE170002

{Orange}(Doublon)

TE170001

RE170001

Voici mon code :

Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Me.Range("G3:G200")) Is Nothing Then Exit Sub

Application.EnableEvents = False

If InStr(Target.Address, ":") = 0 Then Range(Target.Address).Value = UCase(Range(Target.Address).Value)

If Not Intersect(Target, Me.Range("G3:G200")) Is Nothing Then Call Tower_Check("G")

Application.EnableEvents = True

End Sub

Sub Tower_Check(ByVal col As String)

For i = 3 To 200

Dim numero As String

numero = Range(col & i).Value

If Len(numero) = 8 Then

'Vert

Range(col & i).Interior.Color = RGB(30, 198, 30)

ElseIf numero = "" Then

Range(col & i).Interior.ColorIndex = 0

Else

'Rouge

Range(col & i).Interior.Color = RGB(220, 33, 33)

End If

Dim count As Integer

count = 0

For j = 3 To 200

Dim numero2 As String

numero2 = Range(col & j).Value

If numero = numero2 And numero2 <> "" Then

count = count + 1

End If

Next

If count > 1 Then

'Orange

Range(col & i).Interior.Color = RGB(252, 140, 27)

End If

Next

End Sub

Est ce que quelqu'un pourrai me donner des indications ou me donner la solution ?

Je laisse mon fichier Excel en annexe pour que vous puissiez y accéder

Feuilles en question:

Excel : Divers

VBA: Feuille4 (Divers) et Module1.

bonjour,

pour prendre le 4 derniers caratères de numéro

right(numero,4)
Rechercher des sujets similaires à "vba verifier derniers caracteres"