Remplacer des valeurs

highlander

XLDnaute Nouveau
Bonjour, je fais encore appel à votre bonne volonté et à vos bon conseil.

j'ai un fichier excel dans lequel je veux faire une macro (pas mise en forme conditionnelle) pour remplacer un nom tapper par un autre

si je tape : "prof 1" ca me met automatiquement "professeur N° 1"

ça j'arrive à le faire, voici d'ailleurs le code :

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C4:AC42")) Is Nothing Then
Cells.Replace What:=("prof 1"), Replacement:=("Professeur N° 1"), LookAt:=xlWhole, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End If
End Sub

Maintenant j'aimerai que la valeur tapée, si elle correspond à la valeur de la case "a117" (valeur qui bouge en fonction de données rentrer sur une autre feuille (sa pas de soucis c'est une formule basique) soit remplacer par la valeur de la case "A74"

si quelqu'un a une idée, je suis preneur

merci d'avance pour le temps passé à essayer.
 

mth

XLDnaute Barbatruc
Re : Remplacer des valeurs

bonsoir highlander

Petit essai :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C4:AC42")) Is Nothing Then
Cells.Replace What:=("prof 1"), Replacement:=("Professeur N° 1"), LookAt:=xlWhole, SearchOrder _
    :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    If Target = Range("A117") Then Target = Range("A74")
End If
End Sub

Bonne soirée/nuit,

mth
 

highlander

XLDnaute Nouveau
Re : Remplacer des valeurs

merci pour la formule, elle ne marchait pas mais je l'ai transformé légèrement et voici le résultat

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C4:AC42")) Is Nothing Then
If Target = Range("A117") Then Target = Range("A74")
Cells.Replace What:=("a117"), Replacement:=("a74"), LookAt:=xlWhole, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
If Target = Range("A118") Then Target = Range("A75")
Cells.Replace What:=("a118"), Replacement:=("a75"), LookAt:=xlWhole, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End If
End Sub

encore merci
 

Discussions similaires

Réponses
1
Affichages
139

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 508
Messages
2 089 143
Membres
104 050
dernier inscrit
Pepito93100