Re: [fr-users] recopier sous chaine d'une chaine

2017-06-18 Par sujet diverslaposte

La fonction CHERCHE("[:alpha:]";A1;B1)

n'est pas ideal car elle se positionne sur le 1er caractère alpha après 
les "digits" . S'il y a un . (point) ou un - (tiret) ou un blanc ou une 
( on se retrouve embêté avec dans le résultat.


Voili, voila. Mais pour l'instant c'est le mieux qu'on puisse trouver.

*Thierry Rouillon *
Chalons en Champagne
tel: 06 08 05 99 74
Le 17/06/2017 à 23:15, LC_Libre a écrit :

Le 17/06/2017 à 21:11, diverslaposte a écrit :
Je pense que cette fonction crée des colonnes suivant le nombre de 
mots. Si c'est le cas, le nombre de mots varie.


*Thierry Rouillon *
Chalons en Champagne
tel: 06 08 05 99 74
Le 17/06/2017 à 21:07, Jean Michel PIERRE a écrit :



ma reference 259 G


Bonjour,

Je commencerai par tester :

Données > Texte en colonnes






Bonjour,

en effet, les nombres se promenent d'une colonne à l'autre.

La solution proposée par Michel me semble la plus économique.

L'idéal serait une fonction en Basic pour extraire les données 
numériques de toute chaine de caractère.

Un simple =extractdigit(A1) suffirait dans ce cas.

Mais je ne sais pas faire :(

LC



--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


Re: [fr-users] recopier sous chaine d'une chaine

2017-06-17 Par sujet LC_Libre

Le 17/06/2017 à 21:11, diverslaposte a écrit :
Je pense que cette fonction crée des colonnes suivant le nombre de mots. 
Si c'est le cas, le nombre de mots varie.


*Thierry Rouillon *
Chalons en Champagne
tel: 06 08 05 99 74
Le 17/06/2017 à 21:07, Jean Michel PIERRE a écrit :



ma reference 259 G


Bonjour,

Je commencerai par tester :

Données > Texte en colonnes






Bonjour,

en effet, les nombres se promenent d'une colonne à l'autre.

La solution proposée par Michel me semble la plus économique.

L'idéal serait une fonction en Basic pour extraire les données 
numériques de toute chaine de caractère.

Un simple =extractdigit(A1) suffirait dans ce cas.

Mais je ne sais pas faire :(

LC
--
Configuration : Mac OS 10.10.5, RAM 8 Gio, LibreOffice 5.2.7.2 & 5.3.3.2



--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


Re: [fr-users] recopier sous chaine d'une chaine

2017-06-17 Par sujet diverslaposte

En

B4: =CNUM(ABS(B3))   conversion en nombre

Ça fonctionne mais si le nombre est suivi d'un point ça ne fonctionne plus. Il faudrait 
un truc du genre " not digit" pour B2

*Thierry Rouillon *
Chalons en Champagne
tel: 06 08 05 99 74
Le 17/06/2017 à 19:43, Michel Rudelle a écrit :

Bonsoir,


-Message d'origine-
De : demande_aide...@libreoffice.org
[mailto:demande_aide...@libreoffice.org]
Envoyé : samedi 17 juin 2017 18:21
À : users@fr.libreoffice.org
Objet : [fr-users] recopier sous chaine d'une chaine

Bonjour

Email:: thierry.rouil...@laposte.net
Sujet:: recopier sous chaine d'une chaine
Question:: Bonjour. Je voudrais extraire la partie numérique d'une chaine
dans une colonne A pour la recopier dans la colonne B en vue de faire un
tri numérique au lieu d'alpha.
Exemple:
A: "ma reference 259 G"
B: 259
Faut-il passer par une macro ? Merci.

C'est possible en utilisant les expressions régulières:

Vérifier d'abord que dans:
Outils > Options > LibreOffice Calc > Calcul
la case "Autoriser les expressions régulières dans les calculs" est cochée
(Attention, sur Mac, il me semble que le terme Option est remplacé par
Préférences)

Si A1 contient "ma reference 259 G", je décompose le calcul de B1 à B4:

B1: =CHERCHE("[:digit:]";A1)position du premier chiffre
B2: =CHERCHE("[:alpha:]";A1;B1) position du 1er caractère alpha qui suit
B3: =STXT(A1;B1;B2-B1)  extraction du nombre sous forme de chaîne
B4: =CNUM(B3)   conversion en nombre

On peut bien sûr ensuite regrouper tout ça.
Et je pense qu'on peut faire plus simple, mais je n'ai pas trouvé dans
l'instant, voilà déjà de quoi dépanner, et d'autres auront sûrement de
meilleures idées.

Cordialement,

Michel

PS: Si vous répondez, pensez à utiliser la fonction "répondre à tous" de
votre logiciel de courrier électronique afin que la liste reçoive une copie
de votre réponse.




--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


Re: [fr-users] recopier sous chaine d'une chaine

2017-06-17 Par sujet diverslaposte
Je pense que cette fonction crée des colonnes suivant le nombre de mots. 
Si c'est le cas, le nombre de mots varie.


*Thierry Rouillon *
Chalons en Champagne
tel: 06 08 05 99 74
Le 17/06/2017 à 21:07, Jean Michel PIERRE a écrit :



ma reference 259 G


Bonjour,

Je commencerai par tester :

Données > Texte en colonnes




--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


Re: [fr-users] recopier sous chaine d'une chaine

2017-06-17 Par sujet diverslaposte
Pas mal. Ça commence a bien donner. J'ai un souci car certains 
enregistrement se caractérise comme ça:


 "ma reference 259 - G"

Dans mon dernier champ j'obtiens "-259"
Je pense qu'en prenant la valeur absolue, ça devrait fonctionner.
Merci.

*Thierry Rouillon *
Chalons en Champagne
tel: 06 08 05 99 74
Le 17/06/2017 à 19:43, Michel Rudelle a écrit :

Bonsoir,


-Message d'origine-
De : demande_aide...@libreoffice.org
[mailto:demande_aide...@libreoffice.org]
Envoyé : samedi 17 juin 2017 18:21
À : users@fr.libreoffice.org
Objet : [fr-users] recopier sous chaine d'une chaine

Bonjour

Email:: thierry.rouil...@laposte.net
Sujet:: recopier sous chaine d'une chaine
Question:: Bonjour. Je voudrais extraire la partie numérique d'une chaine
dans une colonne A pour la recopier dans la colonne B en vue de faire un
tri numérique au lieu d'alpha.
Exemple:
A: "ma reference 259 G"
B: 259
Faut-il passer par une macro ? Merci.

C'est possible en utilisant les expressions régulières:

Vérifier d'abord que dans:
Outils > Options > LibreOffice Calc > Calcul
la case "Autoriser les expressions régulières dans les calculs" est cochée
(Attention, sur Mac, il me semble que le terme Option est remplacé par
Préférences)

Si A1 contient "ma reference 259 G", je décompose le calcul de B1 à B4:

B1: =CHERCHE("[:digit:]";A1)position du premier chiffre
B2: =CHERCHE("[:alpha:]";A1;B1) position du 1er caractère alpha qui suit
B3: =STXT(A1;B1;B2-B1)  extraction du nombre sous forme de chaîne
B4: =CNUM(B3)   conversion en nombre

On peut bien sûr ensuite regrouper tout ça.
Et je pense qu'on peut faire plus simple, mais je n'ai pas trouvé dans
l'instant, voilà déjà de quoi dépanner, et d'autres auront sûrement de
meilleures idées.

Cordialement,

Michel

PS: Si vous répondez, pensez à utiliser la fonction "répondre à tous" de
votre logiciel de courrier électronique afin que la liste reçoive une copie
de votre réponse.




--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


Re: [fr-users] recopier sous chaine d'une chaine

2017-06-17 Par sujet Jean Michel PIERRE



ma reference 259 G


Bonjour,

Je commencerai par tester :

Données > Texte en colonnes

--
Jean-Michel PIERRE


--
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés


RE: [fr-users] recopier sous chaine d'une chaine

2017-06-17 Par sujet Michel Rudelle
Bonsoir,

> -Message d'origine-
> De : demande_aide...@libreoffice.org
> [mailto:demande_aide...@libreoffice.org]
> Envoyé : samedi 17 juin 2017 18:21
> À : users@fr.libreoffice.org
> Objet : [fr-users] recopier sous chaine d'une chaine
> 
> Bonjour
> 
> Email:: thierry.rouil...@laposte.net
> Sujet:: recopier sous chaine d'une chaine
> Question:: Bonjour. Je voudrais extraire la partie numérique d'une chaine
> dans une colonne A pour la recopier dans la colonne B en vue de faire un
> tri numérique au lieu d'alpha.
> Exemple:
> A: "ma reference 259 G"
> B: 259
> Faut-il passer par une macro ? Merci.

C'est possible en utilisant les expressions régulières:

Vérifier d'abord que dans:
Outils > Options > LibreOffice Calc > Calcul
la case "Autoriser les expressions régulières dans les calculs" est cochée
(Attention, sur Mac, il me semble que le terme Option est remplacé par
Préférences)

Si A1 contient "ma reference 259 G", je décompose le calcul de B1 à B4:

B1: =CHERCHE("[:digit:]";A1)position du premier chiffre
B2: =CHERCHE("[:alpha:]";A1;B1) position du 1er caractère alpha qui suit
B3: =STXT(A1;B1;B2-B1)  extraction du nombre sous forme de chaîne
B4: =CNUM(B3)   conversion en nombre

On peut bien sûr ensuite regrouper tout ça.
Et je pense qu'on peut faire plus simple, mais je n'ai pas trouvé dans
l'instant, voilà déjà de quoi dépanner, et d'autres auront sûrement de
meilleures idées.

Cordialement,

Michel 

PS: Si vous répondez, pensez à utiliser la fonction "répondre à tous" de
votre logiciel de courrier électronique afin que la liste reçoive une copie
de votre réponse.


-- 
Envoyez un mail à users+unsubscr...@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à 
http://listarchives.libreoffice.org/fr/users/
Tous les messages envoyés sur cette liste seront archivés publiquement et ne 
pourront pas être supprimés