Je frappe ma tête sur celui-ci.
J'ai une feuille Excel avec 994 lignes, mais lorsque j'exporte au format CSV, je reçois 1880 lignes au format texte!
Et bien sûr, maintenant que j'essaie de recréer le fichier Excel d'origine, j'ai 1880 lignes.
Tout le monde peut me dire ce qui pourrait se passer ici?
Je viens de trouver la source du problème:
Le fichier d'origine contient des retours chariot dans les cellules et, lorsqu'ils sont exportés au format texte, ces retours chariot sont convertis en nouvelles lignes.
Maintenant la partie amusante: le fichier texte a été traduit et je dois réimporter le fichier traduit dans Excel, en recréant le format ***. Quelqu'un sait comment je pourrais faire ça?
microsoft-excel
Sylverdrag
la source
la source
Réponses:
J'ai finalement résolu le problème moi-même. Voici la réponse à des fins de documentation:
Cause:
Certaines cellules contenaient des sauts de ligne. Lors de l'exportation au format CSV, les sauts de ligne ont été convertis en nouvelles lignes, qui n'ont pas été restaurées lors de la réimportation du fichier dans Excel, ce qui a entraîné un nombre de lignes beaucoup plus important que dans le fichier d'origine.
Solution:
Ecrivez une petite application qui oblige chaque ligne à contenir exactement le même nombre de caractères de tabulation que le fichier d'origine. Si la ligne ne contient pas le nombre attendu de TABs, ajoutez la ligne suivante jusqu'à ce que le nombre approprié de TABs soit atteint. Insérez un espace réservé pour marquer les endroits où se trouvaient les sauts de ligne internes. Après le traitement, ouvrez dans Excel, vérifiez le nombre de lignes, puis recherchez et remplacez l’espace réservé par un saut de ligne (Alt + 010).
Voici le code C #: Il utilise 2 contrôles richtextbox:
C'est évidemment une solution rapide et sale, mais elle fait le travail et peut être relativement facilement adaptée pour gérer d'autres fichiers souffrant du même problème.
la source
J'ai eu le même problème et je l'ai corrigé en changeant l'ordre des fonctions (vous devez d'abord ajuster automatiquement les colonnes puis appliquer le retour à la ligne) dans mon code, c'était comme ça
Puis je l'ai changé en ceci:
J'espère que cela aidera quelqu'un qui souhaite générer un fichier Excel et conserver une nouvelle ligne
la source