Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

remplacer une partie d'une chaine

  • Initiateur de la discussion Initiateur de la discussion anna
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

A

anna

Guest
Bonjour le forum
j'espere que vous avez passez un bon WE.
bon retour au boulot et a l'enigme des macro excel 🙂
voila mon problem (enfin c deux problem lies):
le premier : je n voudrai recupere que les dernier caracter d'une chaine a partir du caracter '/':
j ai essaier cette macro mais je n recupere pas tout ce que je veut cad
pour 02/02/0222 je n ai que 222 au lieu de 0222
voila l a macro:

iderligne = Range('B65536').End(xlUp).Row
For X = 2 To iderligne
slash1 = InStr(Cells(X, 2), '-')
slash2 = InStr(slash1 + 1, Cells(X, 2), '-')
If slash2 = 0 Then
slash2 = Len(Cells(X, 2))
Cells(X, 2) = Mid(Cells(X, 2), slash1 + 1, slash2 - slash1)

Else
Cells(X, 2) = Mid(Cells(X, 2), slash1 + 1, slash2 - slash1 - 1)

End If
Next

La deuxieme partie:
a l aide d'une macro je voudrai modifier chaque celule contenant une chaine de caractere par une autre mais en ne modifiant qu'une partie de cette chaine delimite par le caracter '-'
Vaut mieux un exemple n'est ce pas?
alors voila j ai deux colonne A qui contient ma chaine et B qui contient le bout de la chaine a remplace:*


A ---------------------------------- -- B
122302-00-A000-STA-00010 ------------------ xx
122302-01-A000-STA-0001 ------------------ xx
122302-01-A000-STA-0001 ------------------ xx
122302-01-A000-STA-0001 ----------------- xx
122305-0222-S000-STA-0001 ------------------ xx
122305-0222-S000-STA-0001 ------------------ xx







le resultat sera alors
A
122302-xx-A000-STA+0001
122302-xx-A000-STA+0001
122302-xx-A000-STA+0001
122302-xx-A000-STA+0001
122305-xx-S000-STA+0001
122305-xx-S000-STA+0001

j ai fais un petit exemple excel
 
Bonjour

une proposition ci-jointe.

A cause de l'utilisation de split, cette soluce ne fonctionne pas avec excel 97, j'espère que ce n'est pas ton cas.

Salut
[file name=Remplacement2.zip size=8563]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Remplacement2.zip[/file]
 

Pièces jointes

Re,
j essaie dapdapter ton code a mes fichier mais comme j arrive pas a comprendre ce qu est tablo et tablo1 alors j ai un peu de mal,peux tu m expliquer STP.
dans mon cas j ai la chaine dan sla colonne B et celle qui contient les bout a traiter puis a remplacer dan sla colonne L et le resultat doit ecraser les donne ancien alors du coup je n vois pas comment faire le lien entre tablo et tablo1 et mes colonne.
excuser ma naivete mais je suis debutante.
Anna
 
Re

Tu n’a pas a t’excusé d’être débutante. 🙂

Tu n’es pas tomber sur le plus pédagogue du forum en ma personne.

N’ayant pas beaucoup de temps, je vais juste t’expliquer comment modifié la macro pour l’appliquer à ton travail

For Each c In Range('a2:a8') correspond à la plage de départ à scanner, pour toi : (“b2:b???”)

C.offset(0,1) la cellule par rapport à c ou ce trouve le bout de chaîne, pour toi : c.offset (0,10)

L=2 le numéro de ligne de départ pour le renvoi des données

Range('d' & l) : l’endroit ou l’on veut renvoyer les infos (colonne D, ligne l), pour toi : range('b'&l)

et donc, la macro modifié :


en espérant t'avoir aidé;

salut
 
Re
tu explique tres bien Merci cependant courant tout mon prjet je n connais pas la taille (nbr de ligne) de mes fichier a l'avance alors du coup j utilisais que cette formule😛ar exemple


iderligne = Range('B65536').End(xlUp).Row
For x = 2 To iderligne
Cells(x, 2) = Replace(Cells(x, 2), '+', '-')
Next

alors comment remplacer ton range (b2:..) par mes cells(..)?
apres je n t embete plus promis.jusqu a la prochaine fois 😱
Anna
 
Merci Bcq Hervé,
ca me mes une erreur mais je n vais pas te deranger plus que ca je vais a chaque traitement de fichier remplire a la main le numero de la dernier ligne
Merci
Anna
 
Merci mon ami 😉
voila le fichier (enfin j ai extrait que les colonne a traiter!!)
j ai fais un exemple du resultat mais que pour les premiere ligne!!
Merci bcq herve.
contente d'avoir fais ta connaisance excel 😉
Anna [file name=Remplacement3.zip size=7429]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Remplacement3.zip[/file]
 

Pièces jointes

Bonjour.
Merci bcq pour ta reponse je l'integre de suite.
et pour etre aussi efficace,si tu a besoin de quelque chose dans le domaine d'imagerie n'hesite pas.
Bonne journée
Anna
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

P
  • Question Question
Réponses
1
Affichages
3 K
Patrosso
P
C
Réponses
4
Affichages
2 K
cerb_r
C
M
Réponses
6
Affichages
2 K
M
M
Réponses
9
Affichages
1 K
mcastex
M
A
Réponses
8
Affichages
2 K
A
N
  • Question Question
Réponses
5
Affichages
3 K
J
Réponses
4
Affichages
2 K
J
Y
Réponses
9
Affichages
898
Yaniv
Y
E
Réponses
2
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…