Afficher un message
Vieux 19/04/2006, 00h28   #5 (permalink)
odile
Guest
 
Messages: n/a
Par défaut Re:Remplacement d'un mot par un autre macro

bonjour charly2

Merci pour ta réponse. Effectivement dans l'exemple que j'ai envoyé, j'ai en fait bêtement mis une seule des conditions de recherche pensant que la modif sera la même pour chacune d'elles.

Mais au vu de ta macro, je me rends compte que c'est nettement plus complexe que je l'imaginais. Donc pour clarifier la situation je te mets ci-dessous la macro complète de Pascal (légèrement modifiée par un msgbox avec choix)


Private Sub Worksheet_Change(ByVal Target As Range)
'code sans respect de la casse
Dim MonMot As String, MotCel As String
Dim i As Integer

For i = 13 To 47

MonMot = 'PP'

If Target.Address(0, 0) = 'U' & i Then
MotCel = UCase(Target)
If MotCel Like '* ' & MonMot & ' *' Then
MsgBox 'Vous avez choisi du' & ' ' & MonMot & ' ' & 'comme contenant. Ne préférez vous pas utiliser du PETG ?', vbInformation + vbYesNo
If vbNo Then
Exit Sub
Else
Range('U13').Replace What:=MotCel, Replacement:='PETG', LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
End If
ElseIf MotCel Like MonMot & ' *' Then
MsgBox 'Vous avez choisi du' & ' ' & MonMot & ' ' & 'comme contenant. Ne préférez vous pas utiliser du PETG ?', vbInformation + vbYesNo
If vbNo Then
Exit Sub
Else
'Remplacement de MonMot par 'PETG'
End If
Exit Sub
ElseIf MotCel Like '* ' & MonMot Then
MsgBox 'Vous avez choisi du' & ' ' & MonMot & ' ' & 'comme contenant. Ne préférez vous pas utiliser du PETG ?', vbInformation + vbYesNo
If vbNo Then
Exit Sub
Else
'Remplacement de MonMot par 'PETG'
End If
Exit Sub
ElseIf MotCel Like MonMot Then
MsgBox 'Vous avez choisi du' & ' ' & MonMot & ' ' & 'comme contenant. Ne préférez vous pas utiliser du PETG ?', vbInformation + vbYesNo
If vbNo Then
Exit Sub
Else
'Remplacement de MonMot par 'PETG'
End If
Exit Sub
End If
End If
Next i
End Sub
  Réponse avec citation