Excel - Enregistrement txt et caractères cyrilliques [Résolu]

Messages postés
191
Date d'inscription
mercredi 11 juillet 2007
Statut
Membre
Dernière intervention
30 juin 2011
- - Dernière réponse : Whismeril
Messages postés
13412
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 juin 2019
- 30 juin 2011 à 19:30
Bonjour,

Je dois, dans le cadre de mon travaille automatiser l'enregistrement de fichiers .xls en txt séparateur tabulation. Jusque là pas de problème.

Je rencontre malheureusement un problème lorsqu'il s'agit de traiter des fichiers contenant des caractères cyrilliques. Ceux-ci sont alors automatiquement remplacés par des "?".

Le plus étrange, c'est que si j'ouvre le fichier sous Excel manuellement et effectue la sauvegarde en txt depuis l'interface Excel, les caractères sont conservés.

Voici les quelques lignes permettant l'ouverture et la sauvegarde:
Excel.Workbook wb = xlApp.Workbooks.Open(file, 0, false, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, true, true);
ws.SaveAs(path, Excel.XlFileFormat.xlTextWindows, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, true);

Merci, d'avance !

Cordialement,

Anze.
Afficher la suite 

9 réponses

Meilleure réponse
Messages postés
13412
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 juin 2019
280
3
Merci
Bonsoir,
quand j'enregistre avec excel 2003 en ficher tabulé j'ai aussi des ?.
Par contre je vois ton "N" quand j'enregistre en unicode.

essaye donc
ws.SaveAs(path, Excel.XlFileFormat.xlUnicodeText, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, true); 


Ca marche chez moi, mais j'ai fait un cast (objet) pour chaque paramètre.


Whismeril

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 131 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Whismeril
Messages postés
191
Date d'inscription
mercredi 11 juillet 2007
Statut
Membre
Dernière intervention
30 juin 2011
0
Merci
Je me permets de relancer le sujet, puisque ce forum reste mon dernier espoir. J'ai épluché à peu près toutes les ressources d'internet sans succès..

Merci par avance de votre attention.
Commenter la réponse de cs_ansizak
Messages postés
13412
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 juin 2019
280
0
Merci
Bonsoir,
dans Excel quand tu enregistre manuellement le fichier en txt tabulé comment sont les caractères?


Whismeril
Commenter la réponse de Whismeril
Messages postés
191
Date d'inscription
mercredi 11 juillet 2007
Statut
Membre
Dernière intervention
30 juin 2011
0
Merci
Bonjour,

Si tu entends par là l'encodage des caractères, il s'agit d'Ascii.
Le fait est que les caractères sont ensuites visibles proprement dans n'importe que editeur de texte.
Commenter la réponse de cs_ansizak
Messages postés
13412
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 juin 2019
280
0
Merci
Bonsoir,
as tu un exemple de fichier (je n'écris pas le cyrillique couramment!)?

Whismeril
Commenter la réponse de Whismeril
Messages postés
191
Date d'inscription
mercredi 11 juillet 2007
Statut
Membre
Dernière intervention
30 juin 2011
0
Merci
Merci pour ton intérêt, voici un lien vers un fichier xls contenant quelque ligne en caractères cyrillique:
http://dl.dropbox.com/u/8905956/Sample_Cyrillique.xls

le fichier a été très réduit puisqu'il s'agit de données que je ne suis pas autorisé à partager.
La première lettre "Й" devrait normalement apparaître sous la forme d'un point d'interrogation lors de l'enregistrement via code.

Merci encore,

Cordialement,

Anze.
Commenter la réponse de cs_ansizak
Messages postés
191
Date d'inscription
mercredi 11 juillet 2007
Statut
Membre
Dernière intervention
30 juin 2011
0
Merci
Apparemment csharpfr.com n'affiche pas non plus le cyrillique :)
Commenter la réponse de cs_ansizak
Messages postés
191
Date d'inscription
mercredi 11 juillet 2007
Statut
Membre
Dernière intervention
30 juin 2011
0
Merci
Tout simplement.. C'est merveilleux, merci énorme!

Cordialement,

Anze.
Commenter la réponse de cs_ansizak
Messages postés
13412
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
17 juin 2019
280
0
Merci
De rien quand je cherche la syntaxe pour excel, je lance l'enregistrement d'une macro VBA.
Puis j'exécute les opérations que je veux pouvoir programmer.
Il suffit ensuite d'aller lire la macro VBA et de traduire en C#

Whismeril
Commenter la réponse de Whismeril