XL 2013 modification de la troisième lettre dans une cellule

lagodille

XLDnaute Occasionnel
Bonjour à tous et bonne année,

j'aimerai savoir comment changer dans une cellule uniquement la troisième lettre d'un ensemble de chiffres et de lettres comme par exemple dans une cellule 22D001 que je veux via visual basic transformer en 22F001

Merci pour votre aide
 

Etoto

XLDnaute Barbatruc
Bonjour à tous et bonne année,

j'aimerai savoir comment changer dans une cellule uniquement la troisième lettre d'un ensemble de chiffres et de lettres comme par exemple dans une cellule 22D001 que je veux via visual basic transformer en 22F001

Merci pour votre aide
Hello,

Pas besoin de VBA, la fonction SUBSTITUE remplace une lettre par une autre.

VB:
=SUBSTITUE(A1;"D";"F")

Ou alors s'il faut remplacer toutes les troisièmes lettres par "F" :
VB:
=SUBSTITUE(A1;DROITE(GAUCHE(A1;3);1);"F")
 
Dernière édition:

lagodille

XLDnaute Occasionnel
Hello,

Pas besoin de VBA, la fonction SUBSTITUE remplace une lettre par une autre.

VB:
=SUBSTITUE(A1;"D";"F")

Ou alors s'il faut remplacer toutes les troisièmes lettres par "F" :
VB:
=SUBSTITUE(A1;DROITE(GAUCHE(A1;3);1);"F")
bonjour à toutes et à tous,

merci etoto pour ta réponse mais je tenais à utiliser vba car je copie une feuille dans une autre feuille et du coup écrase ta formule dans cette dernière. Du coup je suis obligé de la planquer dans la feuille copiée :(
cordialement
 

patricktoulon

XLDnaute Barbatruc
Bonjour
exemple je change "d" pour "x"
VB:
Sub test()
    Dim texte$
    texte = Feuil1.[A1].Value
    Mid$(texte, 3, 1) = "x"
    [A1] = texte
End Sub
demo.gif
 

job75

XLDnaute Barbatruc
Bonjour lagodille, Etoto, chris, patricktoulon,

SUBSTITUE ne va pas car seule la 3ème lettre doit être remplacée.

Comme patricktoulon mais en choisissant le caractère :
VB:
Sub Remplacer()
Dim x$, y$
x = CStr(Trim(ActiveCell))
If Len(x) < 3 Then Exit Sub
y = Left(Trim(InputBox("3ème caractère :", "Remplacer")), 1)
If y = "" Then Exit Sub
Mid(x, 3, 1) = y
ActiveCell = x
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
311 720
Messages
2 081 900
Membres
101 834
dernier inscrit
Jeremy06510