Microsoft 365 Changement de la valeur d'une cellule en fonction de la valeur d'une autre cellule

Zifox

XLDnaute Nouveau
Bonjour à tous,
J'ai trouvé un code pour modifier plusieurs fichiers à la fois, mais maintenant je voudrais l'adapter pour pouvoir modifier la donnée d'une cellule (colonne F) en fonction d'un texte contenu dans une autre cellule (colonne B, avec comme critère un texte contenu dans la colonne B "hydraulique" ou "moteur" mais ce texte est en milieu de phrase ).Et je voudrais que ce changement se fasse sur la même ligne c'est à dire si dans la colonne B5 j'ai le mot hydraulique, je veux que dans la modification soit faite dans la colonne F. Voici-ci dessous le code que je dois adapter.
Si quelqu'un peut m'aider je le remercie d'avance.
Bonne journée
Code:
Sub Remplacer()
Dim tPath As String, tFile As String, ReplaceWhat As String, ReplaceWith As String
Dim wb As Workbook
Dim ws As Worksheet

'Change as required
ReplaceWhat = Range("B10").Value
ReplaceWith = Range("B13").Value

'The path where your files are saved
tPath = Range("C7").Value

Dim anti As String

'the *.* is all file types, *.xls will give you all xls files, *Reports.xls will give you all files ending with Reports.xls etc
tFile = Dir(tPath & "*.xls")
Application.ScreenUpdating = False

Do While Len(tFile) > 0
    Set wb = Workbooks.Open(tPath & tFile)

    'Assumes you have all data in the first sheet. Can be amended to loop through all sheets in workbook
    Set ws = wb.Sheets(1)
 
    ws.UsedRange.Replace ReplaceWhat, ReplaceWith
    wb.Close True
 
    tFile = Dir

Loop

End Sub
[ /CODE ]

[/QUOTE]
 
Dernière édition:

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour zifox, le forum

Mettez un fichier de test light et anonymisé, cela évite aux contributeurs bénévoles de perdre leur temps à reconstruire un fichier de test, à deviner l'organisation et la composition exacte de vos données et leur permet de fournir une solution adaptée sans tâtonnements. Il vaut bien mieux un fichier de test exemple qu'une ébauche de code récupéré (et non un code que vous avez réalisé mais qui ne fonctionne pas) qui peut être mal adapté à votre problème.

Cordialement, @+
 

Zifox

XLDnaute Nouveau
Bonjour zifox, le forum

Mettez un fichier de test light et anonymisé, cela évite aux contributeurs bénévoles de perdre leur temps à reconstruire un fichier de test, à deviner l'organisation et la composition exacte de vos données et leur permet de fournir une solution adaptée sans tâtonnements. Il vaut bien mieux un fichier de test exemple qu'une ébauche de code récupéré (et non un code que vous avez réalisé mais qui ne fonctionne pas) qui peut être mal adapté à votre problème.

Cordialement, @+
Bonjour Bernard,
Merci pour les informations j’ai oublié de faire cela désolé…
A plus!
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Comme le dit @Bernard_XLD, un petit fichier ne serait pas de refus. ;)

modifier la donnée d'une cellule (colonne F) en fonction d'un texte contenu dans une autre cellule (colonne B, avec comme critère un texte contenu dans la colonne B "hydraulique" ou "moteur" mais ce texte est en milieu de phrase ).Et je voudrais que ce changement se fasse sur la même ligne c'est à dire si dans la colonne B5 j'ai le mot hydraulique, je veux que dans la modification soit faite dans la colonne F.
Est-ce que ça veut dire "copier, dans la colonne F, la valeur d'une cellule de la colonne B" ?

Si je comprends bien, ce n'est en fait pas le critère de la colonne, mais le critère pour copier (ou ne pas copier) la valeur de la cellule de la colonne B vers la cellule de la colonne F, sur la même ligne ?

Donc en gros, tu veux copier B5 en F5 si B5 contient "hydraulique" ?
 

Zifox

XLDnaute Nouveau
Bonjour,

Comme le dit @Bernard_XLD, un petit fichier ne serait pas de refus. ;)


Est-ce que ça veut dire "copier, dans la colonne F, la valeur d'une cellule de la colonne B" ?

Si je comprends bien, ce n'est en fait pas le critère de la colonne, mais le critère pour copier (ou ne pas copier) la valeur de la cellule de la colonne B vers la cellule de la colonne F, sur la même ligne ?

Donc en gros, tu veux copier B5 en F5 si B5 contient "hydraulique" ?
Bonjour Marcel,
Non, en gros je veux que copier dans F5 la valeur de “replace with” si dans B5 il y a le terme “ hydraulique”.Désolé pour les mauvaises explications.
Bonne journée 👍
 

TooFatBoy

XLDnaute Barbatruc
Je suppose, d'une part que le 5 de B5 n'est qu'un exemple et que tu dois scanner tout une colonne, et d'autre part que la valeur à changer peut être différente selon la ligne.

Dans ce cas, perso, j'essaierais de faire ligne par ligne.
 

Discussions similaires

Statistiques des forums

Discussions
312 931
Messages
2 093 721
Membres
105 796
dernier inscrit
Max...26