Excel Downloads
Forum

Précédent   Excel Downloads Forums > Archives > Forum Excel Downloads - Archives

Advertisement

 
 
LinkBack Outils de la discussion
Vieux 23/11/2004, 19h29   #1 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Comment imbriquer toutes ces conditions en VBA ??

bonsoir à tous et à toutes, forumiens, forumiennes,

avec cette formule excel,

'=SI(AZ782<>"";SI(AZ782-DECALER(AQ782;P782;-38);SI(P782<R782;AZ782-DECALER(AQ782;P782;-38);""));"")

je tente de traduire en vba.

Dans la pièce jointe, il y a une tentative d'écriture de code;

Dans ce code vba, après Then, je dois mettre une valeur dans une cellule. Je suppose qu’il s’agit de Cells(782, 43) = 0, puisque à la fin des conditions dans la formule excel, il y a ;"")
ce qui donne :

If Cells(782, 48) <> 0 Then
Cells(782, 43) = 0
ElseIf Cells(782, 48) - Cells(782, 43).Offset(Cells(782, 16), -38) Then
Cells(782, 43) = 0
ElseIf Cells(782, 16) < Cells(782, 18) Then
Cells(782, 43) = 0
ElseIf Cells(782, 48) - Cells(782, 43).Offset(Cells(782, 16), -38) Then
Cells(782, 43) = 0
End If

---
En AQ782, j’obtiens 0.00, alors que je devrais avoir –3, comme en BA782

----
mille mercis d'avance à qui saura me sortir de là (pour trouver -3 en AQ782)

...sans vouloir abuser...
(encore un drôle de challenge)

albert
Fichiers attachés
Type de fichier : zip ColAQ.zip (47,4 Ko, 4 affichages)
 
ANNONCES
Vieux 23/11/2004, 20h06   #2 (permalink)
Abel
Guest
 
Messages: n/a
Par défaut Re: Comment imbriquer toutes ces conditions en VBA ??

Bonsoir albert, le forum,

Si tes informations sont toujours aux mêmes places dans ta feuille, utilise plutôt Range("AQ782") = QuelqueChose pour alimenter la cellule, ou pour tester son contenu, ou QuelqueChose = Range ("AQ782") pour récupérer le contenu de la cellule AQ782 et en faire ce que tu veux.

If Range ("AZ782") <>"" Then ...

Essaie avec ça et dis nous si cela convient mieux.


En espérant que cela te dépanne.


Abel
 
Vieux 23/11/2004, 20h18   #3 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Re: Comment imbriquer toutes ces conditions en VBA ??

Bonsoir Abel, le forum,

Je veux bien utiliser Range(), mais ça ne résoud rien.

Mon PB est de comprendre la formule excel pour l’exploiter.
Or, j’ai supposé qu’après Then, il fallait mettre
Cells(782, 43) = 0

Et il semble que cette supposition soit fausse puisque le résultat est =0

Il faut donc que je comprenne ce « QuelqueChose = Range ("AQ782") »
(je suis nul en formules excel)
 
Vieux 24/11/2004, 12h44   #4 (permalink)
albert
Guest
 
Messages: n/a
Par défaut Re: Comment imbriquer toutes ces conditions en VBA ??

EUREKA!!

en fait il ne fallait pas utiliser elseif

Sub ColAQ3()
If Range("AZ782") <> 0 Then
Range("AQ782") = Range("AZ782") - Range("AQ782").Offset(Range("P782"), -38)
'deuxième condition
If Range("P782") < Range("R782") Then
Range("AQ782") = Range("AZ782") - Range("AQ782").Offset(Range("P782"), -38)
End If
End If
End Sub
 
ANNONCES
 

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 05h51.


(C) 2006 Excel Downloads