Oui bien vu Christian,
je m'étais basé sur le "reformatage en texte" et j'ai omis le fait qu'il
fallait enlever les 3 derniers caractères dans ma formule...

Yves

Le mar. 13 juin 2023 à 01:13, C Fourcroy <[email protected]> a écrit :

> Euh, me goure-je ou ça marche pas ?
> Il faut enlever les 3 derniers caractères, non ?
> $1 renvoi la totalité de la chaîne sélectionnée, donc le ":cc" final aussi.
> ça ne serait pas plutôt ^(.*:.*):.*$
> Et si l'on veut vraiment un ' ou un " en début de chaîne il faudrait
> quelque chose du genre ''$1 ou "$1
>
>
> Le 12/06/2023 à 22:48, yves dutrieux a écrit :
> > Bonsoir,
> >
> > comme Claire le mentionne, la solution regex combinée à une macro est
> > possible et est drôlement efficace !
> > <sélectionner 2 cellules sur lesquelles appliquer la modif>
> > <activer l'enregistrement macro>
> > <Ctrl-H>
> > rechercher : (^.*$)
> > remplacer   : '$1       (attention à l'apostrophe devant le $1 ! )
> > [x] selection active seulement.
> > [x] expression régulière
> > [remplacer tout]
> > <s'il propose un écran avec le résultat des cellules remplacées, décocher
> > l'option d'afficher cet écran)>
> > [fermer]
> > <stopper l'enregistrement macro>
> > et nommer cette macro par exemple : "forcer_en_texte"
> > Ensuite soit adapter la barre d'outils ou un raccourci pour y affecter
> > cette macro.
> >
> > Il faudra donc sélectionner les cellules ad-hoc ensuite avant de cliquer
> > sur le bouton ou actionner le raccourci ;)
> >
> > Bonne découverte.
> > Yves
> >
> >
> > Le lun. 12 juin 2023 à 14:21, Ocleyr2lalune <[email protected]> a
> > écrit :
> >
> >> Bonjour
> >> Si ce n'est pas un horaire, ou une durée, et qu'il y a : qui separent
> les
> >> valeurs, ce doit être traité comme du texte.
> >> Cela fait plusieurs questions qu'on essaie de garder un format numérique
> >> alors que le format texte s'impose. Chercher à le conserver est une
> source
> >> d'erreur.
> >>
> >> Quand une suite de caractère  contient uniquement des chiffres qui n'ont
> >> pas vocation à s'additionner, les fonctions texte permettent de
> manipuler
> >> cette suite de caractères.
> >>
> >> Quand une série de chiffres doit subir une opération du type j'enleve
> les
> >> 3 derniers chiffres (caractères), j'extraie le 2e et 3e chiffre... On
> n'est
> >> clairement sur un manipulation de chaine de caractère et se compliquer
> la
> >> vie a manipuler ça comme des nombres me paraît vraiment hasardeux.
> >>
> >> Ben oui moi aussi j'ai mes manies.... Les valeurs texte quand c'en
> est....
> >>
> >> Sur la question d'origine
> >>
> >> Peut-être qu'il faudrait déjà regarder si le format seulement ne doit
> pas
> >> être corrigé (si on était sur un chrono par exemple) => format/cellules
> >> Sinon Sélectionner la colonne données / texte en colonnes
> >> Dans la fenêtre qui s'affiche selectionner l'aperçu des valeurs puis
> >> texte.(du coup on ne perd pas les 0 en début de chaîne et on revient
> dans
> >> les clous.
> >>
> >> Peut-être qu'une regex repond directement à la question :
> >> Soit via un rechercher/remplacer (ctrl H)
> >> Soit via la fonction regex qu'on oublie souvent
> >>
> >> Pour la macro, les experts macro pourront corriger ou compléter mais...
> >> Il me semble qu'on peut faire d'une fonction personnalisée une macro (si
> >> la correction à effectuer est récurrente... Ça s'entend)
> >>
> >> ⁣Claire​
> >>
> >> Le 12 juin 2023 à 13:14, à 13:14, C Fourcroy <[email protected]> a
> écrit:
> >>> OUPS...
> >>>
> >>> ça serait mieux avec =SI(ESTNONTEXTE(A1);""""  & TEXTE(A1;"hh:mm");
> >>> """"
> >>> & GAUCHE(A1;5))
> >>> Sinon on risque de perdre les 0 de tête, 05 devient 5 etc ...
> >>>
> >>>
> >>>
> >>> Le 12/06/2023 à 11:52, Kohler Gerard a écrit :
> >>>> bonjour,
> >>>>
> >>>> dans une feuille calc j'ai plusieurs dizaines de cellules ayant des
> >>>> données sous la forme xx:yy:zz
> >>>>
> >>>> clac les considère comme des données horaire, ce qu'elles ne sont
> >>> pas.
> >>>> je voudrais remplacer ces données par 'xx:yy (ajout d'un guillemet au
> >>>> début et suppression des 3 derniers caractères)
> >>>>
> >>>> j'aimerai assigner une macro à une combinaison de touche.
> >>>>
> >>>> je me place dans une cellule à modifier,
> >>>>
> >>>> j'utilise le menu enregistrer une macro,
> >>>>
> >>>> je fais F2 puis touche fin ensuite 3 fois retour en arrière puis
> >>>> touche origine puis ' puis entrée
> >>>>
> >>>> j'enregistre la macro
> >>>>
> >>>> lorsque je me place sur une autre cellule et que je lance cette macro
> >>>> elle me remplace la valeur de la cellule par celle de la cellule qui
> >>>> m'a servi pour enregistrer ma macro.
> >>>>
> >>>> où est mon erreur ?
> >>>>
> >>>> merci pour votre aide
> >>>>
> >>>> Gérard
> >>>>
> >>>>
> >>> --
> >>> Envoyez un mail à [email protected] pour vous
> >>> désinscrire
> >>> Les archives de la liste sont disponibles à
> >>> https://listarchives.libreoffice.org/fr/users/
> >>> Privacy Policy: https://www.documentfoundation.org/privacy
> >> --
> >> Envoyez un mail à [email protected] pour vous
> >> désinscrire
> >> Les archives de la liste sont disponibles à
> >> https://listarchives.libreoffice.org/fr/users/
> >> Privacy Policy: https://www.documentfoundation.org/privacy
> >>
> >
>
>

-- 
web site : http://www.molenbaix.com

-- 
Envoyez un mail à [email protected] pour vous désinscrire
Les archives de la liste sont disponibles à 
https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy

Répondre à