Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Formule avec 2 conditions

AD95

XLDnaute Junior
Bonjour la team,

J'ai mis en place une formule sur mon Excel avec 2 conditions qui fonctionne bien par contre dès que je l'intègre dans le code VBA ça ne marche pas. sur la colonne AA4 j'ai que des KO alors qu'il devrait pas.
Voici mon besoin :

Si la colonne U contient "Yes" alors mettre "OK" sinon mettre "KO" mais si la colonne "N" est supérieur à "0" alors mettre N/A



Formule dans Excel qui fonctionne
=SI($N4="1";"N/A"; SI($U4="Yes";"OK";"KO"))

La même formule dans le code VBA
Range("AA4:AA" & dernièreLigne).Formula = "=IF(RC14=""1"",""N/A"", IF(RC21=""Yes"",""OK"",""KO""))


Pourriez-vous svp m'éclairer dans mon erreur ? Merci d'avance
 

AD95

XLDnaute Junior
Bonjour @AD95

Avec un fichier on pourrait voir plus facilement ou le code cloche
==> Que vaut derniereLigne etc ......

A quoi cela te sert il d'avoir le code VBA ET la formule ?
Bonjour Phil69970,

Merci pour ton retour.

La ligne derniereLigne je l'utilise pour lui d'étaler la formule jusqu'à la dernière ligne (vue que je sais jamais à l'avance quand elle termine) cette commande fonctionne parfaitement

ce qui me cause problème c'est la formule que j'essaie de créer dans VBA "=IF(RC14=""1"",""N/A"", IF(RC21=""Yes"",""OK"",""KO""))


en faite je veux juste reproduire ce qu'il y a dans l'excel dans la colonne AA en code VBA
 

Pièces jointes

  • Formule_Double_Condition.xlsx
    9.3 KB · Affichages: 1

Phil69970

XLDnaute Barbatruc
@AD95
Edit Bonjour Gérard

Je te propose ceci

VB:
Sub Test()
Dim Derlig&
Derlig = Range("N" & Rows.Count).End(xlUp).Row
Range("AA2:AA" & Derlig).FormulaLocal = "=SI($N2=1;""N/A""; SI($U2=""Yes"";""OK"";""KO""))"
End Sub

Merci de ton retour
 

Pièces jointes

  • Test formule V1.xlsm
    14.9 KB · Affichages: 1

AD95

XLDnaute Junior
Bonjour Phil69970,

ça marche nikel. Merci beaucoup

Grace à Job75 je viens de trouver l'erreur sur ma formule il fallait rajouter R1C1 et retirer les "" sur le 1

Range("AA4:AA" & dernièreLigne).FormulaR1C1= "=IF(RC14=1,""N/A"", IF(RC21=""Yes"",""OK"",""KO""))"

Bon week end
 

Discussions similaires

Réponses
6
Affichages
353
Réponses
20
Affichages
605
Réponses
5
Affichages
452
Réponses
4
Affichages
167
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…