Question de conversion en UTF-8 pour une VBA qui enregistre un txt

stephsteph

XLDnaute Occasionnel
Bonjour le forum,


J’ai une macro VBA qui marche bien qui après plusieurs opérations sur un fichier xlsm, enregistre le résultat dans un fichier txt avec le code :

Set fs = CreateObject("Scripting.FileSystemObject")

Set a = fs.CreateTextFile(ThisWorkbook.Path & "\" & Liste(i - 1) & ".txt", True)

Le résultat délivré est, après ouverture de Notepad++, en caractères ANSI.

Je dois passer maintenant en UTF-8 et j’ai cherché sur le Net comment modifier le codage pour cela, je n’ai trouvé qu’une seule référence en Anglais qui indique qu’il faut ajouter un autre true comme :

Set a = fs.CreateTextFile(ThisWorkbook.Path & "\" & Liste(i - 1) & ".txt", True, True)

Hélas le résultat obtenu est en UCS-2 LE BOM , pas en UTF-8.


Quelqu’un a une idée ?

Merci de votre aide

Steph
 

stephsteph

XLDnaute Occasionnel
Bonjour Staple 1600.

Oui j'avais coché avant, elles ne se sont pas décochées, je pense.
Dans Notepad++ j'ai essayé de créer une macro automatique (j'en ai déjà quelques unes) mais cela ne marche pas.
Il semblerait que Notepad++ ne comprend pas la sélection de tous les fichiers chargés en macro (alors que c'est possible sans la macro, mais alors si l'on clique encoder en UTF-8 il ne transforme que le fichier actif, pas les autres qui sont sélectionnés mais pas actifs).

Voilà Staple 1600 tu as appelé à la rescousse le forum mais personne ne s'est manifesté.
Je n'ai pas les moyens d'aller sur le forum Notepad++...

Donc je te propose de faire une pause pour que je teste ta soluce sous commandes Windows (je connais un peu) ou que je cherche de mon côté un freeware de conversion sans commande ou que je tente de poser la question sur les forums en Anglais où il y avait des soluces qui ne marchaient pas (là çà va être du sport).

Et je reviens vers toi si je trouve.

En tout cas tous mes remerciements. Tu es vraiment super et très accrocheur en plus, ce qui est très rare.

Bises, Stéphanie
 

Discussions similaires