OVH Cloud OVH Cloud

modification de cellule en fonction d'une autre...

4 réponses
Avatar
didier
Bonjour,

je voudrais avec un code du type For Each cellule In Range("I2:I500")
effectuer ce type de modification: a chaque fois que la cellule de la
colonne I vaut
"BDG" ( chaîne de caractère ) , je voudrais que la cellule de la meme ligne
et de la colonne (I+2) = K vaille 1204 . Quel est le code correspondant ?

Merci .

4 réponses

Avatar
Lolote
Salut Didier,

Sub test()
For Each xCellule In Range("I2:I500")
If UCase(xCellule) = "BDG" Then
xCellule.Offset(0, 2).FormulaR1C1 = 1024
End If
Next
End Sub

Ca marche ????

@+ Lolote

"didier" a écrit dans le message de news:

Bonjour,

je voudrais avec un code du type For Each cellule In Range("I2:I500")
effectuer ce type de modification: a chaque fois que la cellule de la
colonne I vaut
"BDG" ( chaîne de caractère ) , je voudrais que la cellule de la meme
ligne
et de la colonne (I+2) = K vaille 1204 . Quel est le code correspondant ?

Merci .


Avatar
Daniel
Bonjour.

Sub test()
Dim c As Range
For Each c In Range("I2:I500")
If c.Value = "BDG" Then
c.Offset(0, 2) = 1204
End If
Next c
End Sub

Cordialement.
Daniel
"didier" a écrit dans le message de news:

Bonjour,

je voudrais avec un code du type For Each cellule In Range("I2:I500")
effectuer ce type de modification: a chaque fois que la cellule de la
colonne I vaut
"BDG" ( chaîne de caractère ) , je voudrais que la cellule de la meme
ligne
et de la colonne (I+2) = K vaille 1204 . Quel est le code correspondant ?

Merci .


Avatar
papou
Bonjour
VBA n'est pas forcément indispensable dans ce cas, une formule toute simple
aurait fait l'affaire.
Ceci étant avec quelque chose comme ça
Dim c As Range, AdrPlg
With Range("I2:I500")
Set c = .Find("BDG", , xlValues, xlWhole, xlByRows)
If Not c Is Nothing Then
AdrPlg = c.Address
Do
c.Offset(0, 2).Value = 1204
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> AdrPlg
End If
End With


Cordialement
Pascal

"didier" a écrit dans le message de news:

Bonjour,

je voudrais avec un code du type For Each cellule In Range("I2:I500")
effectuer ce type de modification: a chaque fois que la cellule de la
colonne I vaut
"BDG" ( chaîne de caractère ) , je voudrais que la cellule de la meme
ligne
et de la colonne (I+2) = K vaille 1204 . Quel est le code correspondant ?

Merci .


Avatar
didier
Merci a tous ... c'est extra !!!


Bonjour
VBA n'est pas forcément indispensable dans ce cas, une formule toute simple
aurait fait l'affaire.
Ceci étant avec quelque chose comme ça
Dim c As Range, AdrPlg
With Range("I2:I500")
Set c = .Find("BDG", , xlValues, xlWhole, xlByRows)
If Not c Is Nothing Then
AdrPlg = c.Address
Do
c.Offset(0, 2).Value = 1204
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> AdrPlg
End If
End With


Cordialement
Pascal

"didier" a écrit dans le message de news:

Bonjour,

je voudrais avec un code du type For Each cellule In Range("I2:I500")
effectuer ce type de modification: a chaque fois que la cellule de la
colonne I vaut
"BDG" ( chaîne de caractère ) , je voudrais que la cellule de la meme
ligne
et de la colonne (I+2) = K vaille 1204 . Quel est le code correspondant ?

Merci .