Coller une formule excel en fonction d'une cellule

Le
elli6258
Bonsoir à tous,
J'ai récupérer la macro ci-dessous et que j'essai d'adapter pour réaliser
ceci:
je scrute chaque cellule de la colonne A et si les 2 premieres lettre sont
"OU" alors je pose une formule "= si() sur la même ligne et 7 colonnes
plus loin.
J'ai cru comprendre que la fonction offset me décalait la cellule active et
formula posait un texte.

Pouvez-vous me dire ce qui ne colle pas?
Merci d'avance.
Michel

Dim OUSlig As Range
Dim pl11 As Range
Set pl11 = Range("A1:A" & Range("A65536").End(xlUp).Row)
For Each OUSlig In pl11
If Left(OUSlig.Value, 2) = "OU" Then
ActiveCell.Offset(0, 7).FormulaR1C1 =
"=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
End If
Next OUSlig
Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacky
Le #17927151
Bonsoir,

Replace cette ligne
ActiveCell.Offset(0, 7).FormulaR1C1 =
"=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
par
OUSlig.Offset(0, 7).FormulaR1C1 = "=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
'--------------
eventullement celle-ci si besoin
If Left(OUSlig.Value, 2) = "OU" Then
par
If UCase(Left(OUSlig.Value, 2)) = "OU" Then
--
Salutations
JJ


"elli6258"
Bonsoir à tous,
J'ai récupérer la macro ci-dessous et que j'essai d'adapter pour réaliser
ceci:
je scrute chaque cellule de la colonne A et si les 2 premieres lettre sont
"OU" alors je pose une formule "= si(...) sur la même ligne et 7 colonnes
plus loin.
J'ai cru comprendre que la fonction offset me décalait la cellule active
et formula posait un texte.

Pouvez-vous me dire ce qui ne colle pas?
Merci d'avance.
Michel

Dim OUSlig As Range
Dim pl11 As Range
Set pl11 = Range("A1:A" & Range("A65536").End(xlUp).Row)
For Each OUSlig In pl11
If Left(OUSlig.Value, 2) = "OU" Then
ActiveCell.Offset(0, 7).FormulaR1C1 =
"=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
End If
Next OUSlig



elli6258
Le #17927421
Merci pour ton aide.
je viens d'apprendre encore quelque chose...j'ai utilisé ta 1 ere
proposition et cela fonctionne.
Cordialement

"Jacky" %23wXaa$
Bonsoir,

Replace cette ligne
ActiveCell.Offset(0, 7).FormulaR1C1 =
"=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
par
OUSlig.Offset(0, 7).FormulaR1C1 = "=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
'--------------
eventullement celle-ci si besoin
If Left(OUSlig.Value, 2) = "OU" Then
par
If UCase(Left(OUSlig.Value, 2)) = "OU" Then
--
Salutations
JJ


"elli6258"
Bonsoir à tous,
J'ai récupérer la macro ci-dessous et que j'essai d'adapter pour réaliser
ceci:
je scrute chaque cellule de la colonne A et si les 2 premieres lettre
sont "OU" alors je pose une formule "= si(...) sur la même ligne et 7
colonnes plus loin.
J'ai cru comprendre que la fonction offset me décalait la cellule active
et formula posait un texte.

Pouvez-vous me dire ce qui ne colle pas?
Merci d'avance.
Michel

Dim OUSlig As Range
Dim pl11 As Range
Set pl11 = Range("A1:A" & Range("A65536").End(xlUp).Row)
For Each OUSlig In pl11
If Left(OUSlig.Value, 2) = "OU" Then
ActiveCell.Offset(0, 7).FormulaR1C1 =
"=IF(MAX(RC[1]:RC[9])=1,""OUI"","""")"
End If
Next OUSlig







Publicité
Poster une réponse
Anonyme