S2: SOMME(SI(I2<>0;SI((H2*J2/I2*0.1)>0;(H2*J2/I2*0.1);0);0);...) [Résolu/Fermé]

Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
- - Dernière réponse : ccm81
Messages postés
9060
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 août 2019
- 3 août 2016 à 15:14
Bonjour,
J'ai plusieurs formules que je n'arrivent pas à traduire en VBA.
Si quelqu'un veut bien me donner un petit coup de pouce svp :D

- Cellule S2
SOMME(SI(I2<>0;SI((H2*J2/I2*0.1)>0;(H2*J2/I2*0.1);0);0);+SI(N2<>0;SI((M2*O2/N2*0.1)>0;(M2*O2/N2*0.1);0);0))
- Cellule T2
(O2+J2)*(SI(E2="cadre";(F2/5);(F2/6))*G2)
- Cellule R2
MFC Couleur.Rouge si => =+Q2<>SI(S2>T2;S2;T2)

Comme vous le remarquerez, il y a de nombreuses conditions et sous-conditions et c'est exactement ça qui me pose problème.

Merciiiiiiiiiiiiiiii.
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
9060
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 août 2019
1607
1
Merci
Bonjour

Q1. Est ce que tu veux que vba te mettre ces formules dans la feuille
Q2. Est ce que le 2 est la valeur d'une variable, si oui laquelle
Q3. Est ce que tu veux copier ces formules vers le bas, si oui jusqu'où
Q4. Est ce que ton excel est en français

Cdlmnt

Dire « Merci » 1

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 58268 internautes nous ont dit merci ce mois-ci

NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Bonjour ccm81 :)
Je suis fan de toi!!! C'est toujours le même tableau si lequel tu m'as déjà bcp aidé.

R1. Le résultat plutôt que la formule
R2. Je n'ai pas compris la question
R3. Oui c'est ça jusque tout en bas comme pour les autre formules avec la fameuse Range("XX" & i)
R4. Mon Excel est français et récent aussi :) (2013)

Merci.
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Tu veux que je te le renvoi?
J'ai déjà bien avancé mais j'ai encore mille et un projets qui me viennent en avançant.
ça me permet surtout d'apprendre sur un cas concret.
Mosfet_05
Messages postés
504
Date d'inscription
mercredi 3 septembre 2014
Statut
Membre
Dernière intervention
10 juin 2018
28 -
Serait il possible d'avoir le lien du fil en question ?
Messages postés
504
Date d'inscription
mercredi 3 septembre 2014
Statut
Membre
Dernière intervention
10 juin 2018
28
0
Merci
Bonjour;
- Cellule S2
SOMME(SI(I2<>0;SI((H2*J2/I2*0.1)>0;(H2*J2/I2*0.1);0);0);+SI(N2<>0;SI((M2*O2/N2*0.1)>0;(M2*O2/N2*0.1);0);0))

Peut être traduit par (non testé) :
'Variabe
dim som as double

'Initialisation
som =0

'Début
IF (range("I2")<>0) THEN
IF ((range("H2")*range("J2")/range("I2")*0.1)>0) THEN
som = som + (range("H2")*range("J2")/range("I2")*0.1)
END IF
END IF


IF(range("N2")<>0) THEN
IF((range("M2")*range("O2")/range("N2")*0.1)>0) THEN
som = som + (range("M2")*range("O2")/range("N2")*0.1)
END IF
END IF

'Mise à jour de S2
range("S2") = som


Qu'en pense tu ?
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Bonjour et merci,
ça bloque en ligne 9, je crois qu'il n'aime pas trop le !
Mosfet_05
Messages postés
504
Date d'inscription
mercredi 3 septembre 2014
Statut
Membre
Dernière intervention
10 juin 2018
28 -
Je l'ai enlevé, l'inversion de condition n'était pas nécessaire.
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Je ne savais pas ce que celà voulait bien dire, j'étais justement en train de chercher :)
Je test comme ça.
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Yes ça marche!!!!! Merci :D
Messages postés
9060
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 août 2019
1607
0
Merci
Une petite macro qui met les formules colonne S, dans la feuille
Public Sub Formules()
Dim f As String, lifin As Long
lifin = Cells(Rows.Count, 13).End(xlUp).Row
f = "=SOMME(SI(I2<>0;SI((H2*J2/I2*0,1)>0;(H2*J2/I2*0,1);0);0);+SI(N2<>0;SI((M2*O2/N2*0,1)>0;(M2*O2/N2*0,1);0);0))"
Range("S2").FormulaLocal = f
Range("S2").AutoFill Destination:=Range("S2:S" & lifin), Type:=xlFillDefault
End Sub


RQ. Je n'ai pas mis de gestion d'erreur

Cdlmnt
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Merci,
j'ai une erreur ici
=> Range("S2").FormulaLocal = f

Et quand je pointe le curseur il me met la valeur de la cellule.
Messages postés
9060
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 août 2019
1607
0
Merci
Chez moi, ça fonctionne
http://www.cjoint.com/c/FGDp0XCjVWe
RQ1. J'ai nettoyé ta colonne O où les cellules sans date contenaient des espaces !!!
RQ2. J'ai modifié un peu ta formule (je pense qu'on pourrait encore faire mieux)
RQ3. Si la proposition de Mosfet_05 que je salue au passage te convient, elle a l'avantage de moins encombrer le fichier, mais, pour écrire la formule vba avec une ligne variable, il va falloir la mettre dans une boucle et .... acheter un sac de guillemets ;-)

Cdlmnt
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 > Mosfet_05
Messages postés
504
Date d'inscription
mercredi 3 septembre 2014
Statut
Membre
Dernière intervention
10 juin 2018
-
Bonjour Mosfet_05 et merci
J'ai trouvé ça sur le site
ActiveSheet.Calculate

Je vais essayer :D
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Bonjour ccm81
Un grand merci encore.
Où se trouve le marché aux guillemets? x0x0x0x
Bon allez, je teste tout ça et je te tiens au courant.
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Arf...
J'ai une erreur.
Microsoft Visual Basic pour Application
(x) 400

Je suis perdue dans mon fichier. Trop de modif qui se croisent. Il me faut un café :@
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Gros PB
Mon traitement ne se fait plus :'(
J'ouvre un autre post et reviendrais ensuite ici pour faire mes tests
En espérant que je trouve une soluce...
merci!
NaXiLeAn
Messages postés
103
Date d'inscription
mercredi 27 juillet 2016
Statut
Membre
Dernière intervention
16 mars 2018
1 -
Bonjour!!!!

Me revoilou :D

Je viens de faire le test à nouveau, et j'ai une erreur sur
=> Range("S2").FormulaLocal = f

Si tu as un peu de temps pour m'aider stp ;)
Messages postés
9060
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
19 août 2019
1607
0
Merci
En ce moment, je n'ai vraiment pas beaucoup de temps, mais tu devrais mettre le fichier en ligne, !

Cdlmnt