Bonjour,
J'ai parcouru les différents sujets du forum concernant les caractère spéciaux, mais je n'arrive pas correctement à afficher une erreur si un caractère spécial est présent. (Ce sujet là https://forum.excel-pratique.com/viewtopic.php?f=2&t=41551&p=232664&hilit=caractere+speciaux#p232664 correspond beaucoup à mon problème, mais j'ai du mal à exploiter la solution).
J'ai dans ma colonne D une liste de N° de série que je récupère automatiquement via une macro, cette liste étant récupérée dans un fichier txt. Mon problème est le suivant :
Il peut parfois y avoir un problème avec les numéros où des caractères spéciaux apparaissent.
Auriez-vous une piste sur comment afficher une seule box (même avec des caractères spéciaux sur plusieurs ligne comme sur l'image) d'erreur si un caractère spécial (ou plus) est présent dans ma colonne D ? (sachant qu'il y a environs 30 lignes contenant des valeurs)
J'ai essayé tout d'abord d'afficher un message d'erreur pour chaque ligne :
If Worksheets("Vérification").Range("D33").Value Like "*=*" Or Worksheets("Vérification").Range("D33").Value Like "*ÿ*" Or Worksheets("Vérification").Range("D33").Value Like "*€*" Or Worksheets("Vérification").Range("D33").Value Like "**" Or
MsgBox ("Attention une sonde rencontre un problème !")
End If
Mais ce n'est pas très pratique si je veux faire des changements (j'ai environ 30 lignes avec des valeurs), et j'obtiens un message d'erreur après une 10ène de ligne balayées.
J'ai donc essayé de tout mettre sur une ligne avec les caractères m'interessant à savoir : = / ÿ / € mais encore une fois je n'ai pas réussi à le faire fonctionner :
For Each cell In Range("D3:D62")
If cell.Value Like "*=*" Or "*ÿ*" Or "*€*" Or "**" Then
If InStr(UCase(Range("D3:D62").Value), "=", "ÿ", "€") > 0 Then
MsgBox ("Attention une sonde rencontre un problème !")
End If
Next
Dites-moi si je n'ai pas était clair, je suis à votre disposition pour plus de détails !
Cordialement,
Devery