Parcourir les caractères d'une cellule et agir dessus
Fermé
Morgan67700
Messages postés
30
Date d'inscription
lundi 8 décembre 2014
Statut
Membre
Dernière intervention
17 avril 2018
-
Modifié par Morgan67700 le 17/03/2016 à 20:39
Whismeril Messages postés 19029 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 26 avril 2024 - 25 mars 2016 à 19:40
Whismeril Messages postés 19029 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 26 avril 2024 - 25 mars 2016 à 19:40
A voir également:
- Parcourir les caractères d'une cellule et agir dessus
- Caractères ascii - Guide
- Caractères spéciaux symboles clavier - Guide
- Aller à la ligne dans une cellule excel - Guide
- Caractères spéciaux - Guide
- Verrouiller cellule excel - Guide
3 réponses
cs_Le Pivert
Messages postés
7903
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
11 mars 2024
728
18 mars 2016 à 08:05
18 mars 2016 à 08:05
Bonjour,
J'ai essayé avec la fonction Replace(Cel,"0692","") mais ça ne marche pas.
FAUX
et ensuite:
je te laisse faire la boucle sur la colonne concernée
--
@+ Le Pivert
J'ai essayé avec la fonction Replace(Cel,"0692","") mais ça ne marche pas.
FAUX
Range("A1").Value = Replace(Range("A1").Value, "0692/", "")
et ensuite:
Range("A2").Value = Replace(Range("A2").Value, "0555", "0555/0692")
je te laisse faire la boucle sur la colonne concernée
--
@+ Le Pivert
Whismeril
Messages postés
19029
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
26 avril 2024
931
18 mars 2016 à 08:57
18 mars 2016 à 08:57
Bonjour,
Tu peux aussi utiliser une regex
https://cafeine.developpez.com/access/tutoriel/regexp/#LIII-A-2
Tu peux aussi utiliser une regex
https://cafeine.developpez.com/access/tutoriel/regexp/#LIII-A-2
Morgan67700
Messages postés
30
Date d'inscription
lundi 8 décembre 2014
Statut
Membre
Dernière intervention
17 avril 2018
1
25 mars 2016 à 18:24
25 mars 2016 à 18:24
Bonjour,
La fonction regex me parait un peu complexe pour l'utilisation que je veux en faire.
Merci pour le tuyau en tout cas.
Morgan67700
La fonction regex me parait un peu complexe pour l'utilisation que je veux en faire.
Merci pour le tuyau en tout cas.
Morgan67700
Whismeril
Messages postés
19029
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
26 avril 2024
931
25 mars 2016 à 19:40
25 mars 2016 à 19:40
Bonsoir
peux tu décrire toutes les opérations que tu veux faire, parce que s'il manque des conditions difficile pour LePivert ou autre de répondre correctement.
Pour les regex, c'est peut être un peu complexe à appréhender au début, mais cela permet, une fois compris, de gérer énormément de cas de traitements de texte sur une ou deux lignes, au final ça simplifie grandement le code.
Pour exemple (en VB.Net) https://codes-sources.commentcamarche.net/forum/affich-7028208-validite-n-telephone-et-adresse-email#9
blq propose un code avec 5 If, 2 regex 20 lignes, en passant un peu de temps sur la regex, j'ai réduit à une regex, 1 if et 7 lignes (9 avec l'encapsulation dans une fonction)
peux tu décrire toutes les opérations que tu veux faire, parce que s'il manque des conditions difficile pour LePivert ou autre de répondre correctement.
Pour les regex, c'est peut être un peu complexe à appréhender au début, mais cela permet, une fois compris, de gérer énormément de cas de traitements de texte sur une ou deux lignes, au final ça simplifie grandement le code.
Pour exemple (en VB.Net) https://codes-sources.commentcamarche.net/forum/affich-7028208-validite-n-telephone-et-adresse-email#9
blq propose un code avec 5 If, 2 regex 20 lignes, en passant un peu de temps sur la regex, j'ai réduit à une regex, 1 if et 7 lignes (9 avec l'encapsulation dans une fonction)
18 mars 2016 à 08:31
https://www.developpez.net/forums/d605223/logiciels/microsoft-office/excel/contribuez/boucles-parcourir-colonne-ligne-plage-donnees-2-methodes/
Dans l'exemple1 copie tu mets ton code dans la boucle en remplaçant Range("A1").Value par Var
voilà
Modifié par Morgan67700 le 18/03/2016 à 13:19
Pour supprimer "0692" j'ai modifié le code et ça marche maintenant:
Par contre pour rajouter "0692" après "0555" ça ne marche pas lorsqu'il se trouve en dernière position dans le process, j'ai mis ce code:
Je ne comprends pas trop pourquoi il ne fait pas les modifications sur les valeurs autres que la première...
Lien du fichier: http://www.cjoint.com/c/FCsmrF3eHWF
Morgan67700
18 mars 2016 à 16:15
25 mars 2016 à 18:42
Je vous remercie pour votre aide mais la fonction Replace ne peut pas répondre à tous les cas dont j'ai besoin de traiter. Si je n'avais qu'un seul cas à traiter elle pourrait être parfaite cette fonction. Dans mon fichier je supprime tout les "0692" au début et ensuite je fait plusieurs procédures différentes qui concernent certaines situations comme par exemple mettre "0692" avant "0510"... Donc je ne peux éviter les doublons ainsi.
Exemple: Replace(Cel,"0555","0555/0692")
0555/0433/0555/0692/0510/0477/0555 -> 0555/0692/0433/0555/0692/0692/0510/0477/0555/0692
Je souhaiterais une fonction qui permet de lire le poste "0000" et ajouter "0692" après ou avant celui-ci en fonction de ce qu'il se trouve avant ou après ce numéro de poste.
La fonction mid permet de lire mais je me demande s'il elle ne permettrait pas de remplacer aussi.
Merci pour votre aide,
Morgan67700