Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Importation de données UNICODE dans EXCEL

1 réponse
Avatar
Riwal
J'essaye d'extraire des données en UNICODE d'un fichier XML pour les placer
dans un fichier Excel. Pour cela j'utilise VBA :
Voici l'exemple d'une ligne du fichier xml
<shortLabel limit="0" text="第2加速时间"/>

Pour lire le fichier en VBA j'utilise :
Set fs = CreateObject("Scripting.FileSystemObject")
Set f_languageFile = fs.GetFile(s_LanguageFile)
Set ts_LanguageFile = f_languageFile.OpenAsTextStream(1, –1)
s_line = ts_LanguageFile.ReadLine
split_line = Split(s_line, ChrW(34)) 'split with "
Worksheets("Translations").Cells(actual_line, colonn).Value =
split_line(3)

Là, je dervais retrouver mon texte en UNICODE (du chinois ici) dans une
cellule de mon fichier Excel. Mais à la place du texte vu plus haut,
j'obtient :
第2åŠ é€Ÿæ—¶é—´

La police de ma cellule est Arial UNICODE MS, donc pas de problème de ce
côté là, alors, d'où ça vient?

Merci de votre aide.

1 réponse

Avatar
Michel Pierron
Bonjour Riwal; essaie avec:
Worksheets("Translations").Cells(actual_line, colonn) _
.Value = StrConv(split_line(3), vbFromUnicode)

MP

"Riwal" a écrit dans le message de news:

J'essaye d'extraire des données en UNICODE d'un fichier XML pour les
placer
dans un fichier Excel. Pour cela j'utilise VBA :
Voici l'exemple d'une ligne du fichier xml
<shortLabel limit="0" text="?2????"/>

Pour lire le fichier en VBA j'utilise :
Set fs = CreateObject("Scripting.FileSystemObject")
Set f_languageFile = fs.GetFile(s_LanguageFile)
Set ts_LanguageFile = f_languageFile.OpenAsTextStream(1, -1)
s_line = ts_LanguageFile.ReadLine
split_line = Split(s_line, ChrW(34)) 'split with "
Worksheets("Translations").Cells(actual_line, colonn).Value > split_line(3)

Là, je dervais retrouver mon texte en UNICODE (du chinois ici) dans une
cellule de mon fichier Excel. Mais à la place du texte vu plus haut,
j'obtient :
第2åS é?Yæ-¶é-´

La police de ma cellule est Arial UNICODE MS, donc pas de problème de ce
côté là, alors, d'où ça vient?

Merci de votre aide.