[Résolu] Séparation texte largeur fixe depuis fichier texte

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
jeromecollection
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 07 juin 2020 16:33

[Résolu] Séparation texte largeur fixe depuis fichier texte

Message par jeromecollection »

Bonjour

J'ai un fichier texte (beaucoup plus long) que cet exemple ci dessous :
14794314775714778914815114788114824714817514787514774714818714637914799114657911111

je souhaite l'importer dans le tableur en largeur fixe (la séparation doit se faire tout les 6 chiffres)
j'ai importé le fichier csv, puis choisis largeur fixe pour le séparateur

le soucis est que le fichier est long et je doit répéter régulièrement cette manip' : comment faire autre que manuellement en cliquant tout les 6 caractères?

Merci d'avance.

J'utilise openoffice 4.1.6
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par micmac le 10 sept. 2021 17:07, modifié 3 fois.
Raison : Adaptation de la longueur du titre pour insérer la balise [Résolu]
Apache OpenOffice 4.1.12 - Windows Arium 10.5 LTS
Avatar de l’utilisateur
Dude
IdOOle de la suite
IdOOle de la suite
Messages : 25173
Inscription : 03 mars 2006 07:45
Localisation : 127.0.0.1

Re: Séparation de texte a largeur fixe depuis fichier CSV

Message par Dude »

Salut,

Un CSV sans séparateur, ce n'est pas un CSV.
Ce fichier est généré par quoi ? Il y a sans doute une solution de ce côté pour le formater correctement.
jeromecollection a écrit :le soucis est que le fichier est long et je doit répéter régulièrement cette manip'
Répéter régulièrement = macro
jeromecollection
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 07 juin 2020 16:33

Re: Séparation de texte a largeur fixe depuis fichier CSV

Message par jeromecollection »

merci de votre retour rapide !

en fait c'est un fichier texte (notepad) que je renomme en csv pour que calc me demande l'import (je ne sait pas faire autrement :) )

oula macro ... aie
Apache OpenOffice 4.1.12 - Windows Arium 10.5 LTS
Avatar de l’utilisateur
Dolev
InconditiOOnnel
InconditiOOnnel
Messages : 945
Inscription : 19 août 2018 05:20

Re: Séparation de texte a largeur fixe depuis fichier texte

Message par Dolev »

Bonsoir,

Par formule :
Capture.PNG
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Open Office 4.1.15 sous Windows 11
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: Séparation de texte a largeur fixe depuis fichier texte

Message par Jeff »

Bonjour,

Je ne sais pas si cela convient, mais tu peux éclater la chaine de caractère par paquet de 6 :

Code : Tout sélectionner

=STXT($A1;(COLONNE(A1)-1)*6+1;6)
AOO_forum.png
Source d’inspiration : https://forum.openoffice.org/fr/forum/v ... 1588#p1588

A +
 Ajout : Hello Dolev :wink: 
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Avatar de l’utilisateur
Oukcha
RespOOnsable modération
RespOOnsable modération
Messages : 3948
Inscription : 06 oct. 2008 08:03

Re: Séparation de texte a largeur fixe depuis fichier texte

Message par Oukcha »

Bonjour et bienvenue sur le forum,
votre signature a écrit : Open Office 4.1.6 - win10
Votre signature indique que vous disposez d'une version de OpenOffice qui n'est plus maintenue.
Est-ce une erreur, un choix, un oubli, une obligation ?
Dans ce dernier cas, mentionnez-le dans votre signature par "Obligation de version".

Pour connaître la version que vous possédez : https://forum.openoffice.org/fr/forum/v ... 582#p11582

Nous vous invitons à vous mettre à jour de la dernière version : https://forum.openoffice.org/fr/forum/v ... m.php?f=38.

Votre signature doit comporter :
1- La version exacte de AOO ou LibO (AOO 4.1.10 ou LibO 6.1.5 par exemple) ;
2- La version exacte du système d'exploitation (Windows 7 SP2, MacOS X 10.13.2, ou Linux OpenSuse Leap 42.3, par exemple).
Accès direct à votre signature pour la corriger.

Cordialement.
                                        
Pour tout savoir sur le fonctionnement de ce forum :arrow: À lire avant tout ! Image
Kev74
Membre hOOnoraire
Membre hOOnoraire
Messages : 139
Inscription : 24 avr. 2021 19:09

Re: Séparation de texte a largeur fixe depuis fichier texte

Message par Kev74 »

Bonjour,
Dolev a écrit :Bonsoir,

Par formule :
Capture.PNG
Voilà la rectification de ta formule :

Code : Tout sélectionner

=STXT($A$34;SI(COLONNE(A1)=1;COLONNE(A1);((COLONNE(A1)-1)*6)+1);6)
Bonne après-midi
Dernière modification par Kev74 le 10 sept. 2021 16:44, modifié 3 fois.
LibreOffice 7.0.5.2 sous Windows 10
jeromecollection
NOOuvel adepte
NOOuvel adepte
Messages : 15
Inscription : 07 juin 2020 16:33

Re: Séparation de texte a largeur fixe depuis fichier texte

Message par jeromecollection »

merci beaucoup jeff !
cela fonctionne :
==STXT($A1;(COLONNE(A1)-1)*6+1;6)
puis j'ai utilisé la poignée de recopie vers la droite

Merci aussi Dolev, cela ne fonctionne pas avec uniquement des chiffres ... mais avec des lettres et chiffres oui
Apache OpenOffice 4.1.12 - Windows Arium 10.5 LTS
Jeff
GourOOu
GourOOu
Messages : 9628
Inscription : 18 sept. 2006 09:40
Localisation : France

Re: [Résolu] Séparation texte largeur fixe depuis fichier te

Message par Jeff »

jeromecollection a écrit :je renomme en csv pour que calc me demande l'import
Cette réponse devrait toujours être d'actualité :
https://forum.openoffice.org/fr/forum/v ... 876#p96876

A +
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 5752
Inscription : 02 janv. 2009 23:56

Re: [Résolu] Séparation texte largeur fixe depuis fichier te

Message par Jean-Louis Cadeillan »

Bonsoir,
Une variante très proche de la solution de Jeff (que je salue :wink: ) :

Code : Tout sélectionner

=STXT(A1;COLONNE(A1:AMJ1)*6-5;6)
formule à saisir dans la première colonne et à valider en matriciel (par Maj+Ctrl+Entrée). L'avantage est qu'on n'a pas à recopier vers la droite et donc à se soucier de la longueur de la chaîne initiale (tant qu'elle n'excède pas 6144 signes).
Pour mémoire, AMJ correspond à la 1024e et dernière colonne de la feuille.
Cordialement,
Jean-Louis
LibO 7.6.6.3 (x64 avec Java 1.8.0_411) et AOO 4.1.15 (avec Java x32 1.8.0_381), Windows 7 Édition Intégrale 64 SP1