TUTOS.EU

Retirer les accents d'une chaine de caractères en vbs

Comment retirer les accents en VBS

'On retire les accents
NomFichierSansExtensionSansAccents = FctReplace(NomFichierSansExtension)
			
Public Function FctReplace(ByVal MaChaine)
	'Fonction VBS pour retirer les caractères accentués

	Dim ListeCaracteresDorigine, ListeCaracteresRemplacement, ArrayCaracteresDorigine, ArrayCaracteresRemplacement, CompteurTableau

	ListeCaracteresDorigine = "À;Á;Â;Ã;Ä;Å;Ç;È;É;Ê;Ë;Ì;Í;Î;Ï;Ò;Ó;Ô;Õ;Ö;Ù;Ú;Û;Ü;Ý;à;á;â;ã;ä;å;ç;è;é;ê;ë;ì;í;î;ï;ð;ò;ó;ô;õ;ö;ù;ú;û;ü;ý;ÿ"
	ListeCaracteresRemplacement = "A;A;A;A;A;A;C;E;E;E;E;I;I;I;I;O;O;O;O;O;U;U;U;U;Y;a;a;a;a;a;a;c;e;e;e;e;i;i;i;i;o;o;o;o;o;o;u;u;u;u;y;y"
	
	ArrayCaracteresDorigine = Split(ListeCaracteresDorigine, ";")
	ArrayCaracteresRemplacement = Split(ListeCaracteresRemplacement, ";")
	
	For CompteurTableau = Lbound(ArrayCaracteresDorigine) To Ubound(ArrayCaracteresDorigine)
		MaChaine = Replace(MaChaine, ArrayCaracteresDorigine(CompteurTableau), ArrayCaracteresRemplacement(CompteurTableau))
	Next

	FctReplace = MaChaine

End Function
Lien vers le fichier : cliquez ici