[Résolu][Calc] Eclater une chaine de caracteres de 255 en 42

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
Avatar de l’utilisateur
kamarago
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 févr. 2012 15:41
Localisation : Marseille

[Résolu][Calc] Eclater une chaine de caracteres de 255 en 42

Message par kamarago »

Bonjour

J'ai dans une cellule une chaine de 255 caractères composée de groupes logiques de 6 soit 42 entités concaténées et contiguës (donc sans caractères de séparation).

Exemple : en A1, j'ai
AAAAABBBBBCCCCCDDDDDEEEEEFFFFF....

Je souhaite éclater cette chaine de caractères en n cellules :
cellule B1 = AAAAA
cellule B2 = BBBBB
cellule B3 = CCCCC
cellule B4 = DDDDD
cellule B5 = EEEEE
....

Pouvez-vous m'aider? Merci d'avance
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par kamarago le 15 oct. 2014 19:48, modifié 4 fois.
LibreOffice Version: 6.4.6.2 sous Ubuntu 20.04.1 inux 5.4
Avatar de l’utilisateur
TheHache
PassiOOnné
PassiOOnné
Messages : 653
Inscription : 02 déc. 2009 09:43

Re: [Calc] Eclater une chaine de caracteres de 255 en 51

Message par TheHache »

Salut kamarago,

Dans ta demande, tu parles de groupes de 5 lettres, dans ton classeur tu en fait apparaître 6 !
Dans ta première chaine, il y a 270 caractères !
C'est 5 ou 6 ?
LibO 25.8.4.2 - Windows 11 Famille
Avatar de l’utilisateur
kamarago
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 févr. 2012 15:41
Localisation : Marseille

Re: [Calc] Eclater une chaine de caracteres de 255 en 51

Message par kamarago »

Bonjour TheHache,
Oups c'est 6 caractères et la chaine est bien de 255 caractères maximum. Voici le fichier mis à jour. Merci pour ton aide
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice Version: 6.4.6.2 sous Ubuntu 20.04.1 inux 5.4
Avatar de l’utilisateur
TheHache
PassiOOnné
PassiOOnné
Messages : 653
Inscription : 02 déc. 2009 09:43

Re: [Calc] Eclater une chaine de caracteres de 255 en 51

Message par TheHache »

J'avais déjà travaillé sur l'ancien, tiens en compte si tu dois reprendre ce classeur pour tes travaux.

Ne sachant pas si ta feuille [Input] serait toujours structurée de la sorte, j'ai préféré travailler avec la cellule active pour t'apporter un début de solution.

Tu mets ta cellule active sur une famille puis tu clic sur le bouton rouge.
Dans ta feuille [Output], tu as ton résultat dans les colonnes F et G pour la ligne après ta cellule active.

Cela va te permettre d’approfondir en fonction de ta feuille [Input].
Je veux bien te programmer la totalité, mais il me faut ta feuille [Input] entière.

@+

PS: Je confirme que ta première cellule contient 270 caractères !
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 25.8.4.2 - Windows 11 Famille
Avatar de l’utilisateur
kamarago
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 févr. 2012 15:41
Localisation : Marseille

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par kamarago »

J'ai mis à jour le premier document avec des explications. Dèjà merci beaucoup. Cela répond bien à ce que je veux faire.
Il peut y avoir n en-têtes dans mon fichier et les lignes de détail sont bloquées à 255 caractères.

Donc si nous avons plus de 42 groupes de 6, alors le dernier groupe de 6 est tronqué en 2 : Les 3 derniers caractères de la ligne sont les trois premiers du groupe de 6 suivant.

Sur la ligne suivante, les trois premiers caractères sont les trois derniers caractères du groupe de 6 précité. Et ainsi de suite jusqu'à trouver une ligne de blancs, ce qui signifie que c'est soit la fin de fichier, soit qu'il y a un nouvel en-tête..
LibreOffice Version: 6.4.6.2 sous Ubuntu 20.04.1 inux 5.4
Avatar de l’utilisateur
TheHache
PassiOOnné
PassiOOnné
Messages : 653
Inscription : 02 déc. 2009 09:43

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par TheHache »

Pourquoi sous les séries CLASSEUR et DAUPHIN il y a deux lignes vides ?
LibO 25.8.4.2 - Windows 11 Famille
Avatar de l’utilisateur
Churay
ManitOOu
ManitOOu
Messages : 2668
Inscription : 30 avr. 2009 04:54
Localisation : CATALUNYA

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par Churay »

Bonsoir,

Questions à 2 sous :
- combien peut-on avoir de lignes au maximum pour une rubrique donnée (entête) ?
- les lignes vides sont-elles nécessaires ?
cOOordialement
---
AOO 4.0.1 W7-PRO & LO 5.1.6.2 Debian 7.8 & Ubuntu 16.04 LTS
---
F1 : ça aide...
XRay + SDK :super:
---
Quand le NOT CONFIRMED sera corrigé (OOo et LO) , je serai heureux...
Avatar de l’utilisateur
TheHache
PassiOOnné
PassiOOnné
Messages : 653
Inscription : 02 déc. 2009 09:43

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par TheHache »

Même principe que la version 1 plus :

Prend en compte tes remarques :
kamarago a écrit :... Les 3 derniers caractères de la ligne sont les trois premiers du groupe de 6 suivant.
Sur la ligne suivante, les trois premiers caractères sont les trois derniers caractères du groupe de 6 précité. Et ainsi de suite jusqu'à trouver une ligne de blancs, ce qui signifie que c'est soit la fin de fichier, soit qu'il y a un nouvel en-tête..
... et toutes les lignes de "codes" se trouvant sous la famille (entête).

J'attends réponse aux questions de churay et les miennes pour modifier et s'affranchir de la gestion de la cellule active.

@+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 25.8.4.2 - Windows 11 Famille
Avatar de l’utilisateur
kamarago
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 févr. 2012 15:41
Localisation : Marseille

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par kamarago »

Encore merci!
Le fichier en entrée comprend deux lignes vides au maximum entre deux rubriques, mais des fois une seule.
Il peut y avoir n lignes de détail pour 1 rubrique mais pour 1 ligne de détail il ne peut y avoir qu'une seule ligne de rubrique

Rubrique1
Détail-1
Détail-n
Ligne vide 1
Ligne vide 2 ( ou pas)
Si ligne 3 vide fin de fichier
Rubrique2
Détail-2
Détail-n
Ligne vide 1
Ligne vide 2 ( ou pas)
Si ligne 3 vide fin de fichier
etc

Il y aura moins de 10 en-têtes de rubrique donc je peux par action manuelle après l'import limiter à une seule ligne vide et appliquer la macro sur cette base d'une seule ligne de séparation entre...
LibreOffice Version: 6.4.6.2 sous Ubuntu 20.04.1 inux 5.4
Avatar de l’utilisateur
TheHache
PassiOOnné
PassiOOnné
Messages : 653
Inscription : 02 déc. 2009 09:43

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par TheHache »

Ok, je vais dîner et je vois ça après. :wink:
LibO 25.8.4.2 - Windows 11 Famille
Avatar de l’utilisateur
TheHache
PassiOOnné
PassiOOnné
Messages : 653
Inscription : 02 déc. 2009 09:43

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par TheHache »

Voila la version 3 qui devrait te satisfaire :wink:

@+
 Ajout : @La modération : Je n'ai pas édité mon précédent post afin de déclencher un mail de surveillance aux abonnés. 
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 25.8.4.2 - Windows 11 Famille
Avatar de l’utilisateur
kamarago
Membre lOOyal
Membre lOOyal
Messages : 39
Inscription : 07 févr. 2012 15:41
Localisation : Marseille

Re: [Calc] Eclater une chaine de caracteres de 255 en 42

Message par kamarago »

cqfd. Celle-ci risque d'être utile souvent!...
Merci beaucoup pour le temps passé, la qualité et la rapidité de la réponse.
Bonne soirée :bravo:
LibreOffice Version: 6.4.6.2 sous Ubuntu 20.04.1 inux 5.4