Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Incrémenter valeur VBA

95 views
Skip to first unread message

François

unread,
Jul 12, 2007, 7:15:44 PM7/12/07
to
Bonjour,

Dans le code ci joint, j'essaie de compter le nombre de valeur, puis de
stocker la valeur de la cellule +1, et ensuite de positionner ces valeurs
dans une somme. Je n'y arrive vraiment pas....

Si quelqu'un a une idée :-))

Cordialement,
François

For Departcol = 9 To Derc Step 13
For Each Cel In Range("A4:A" & Derl)
DateD = Cells(1, Departcol)
DateD = CDate(DateD)
Brut = Cells(Cel.Row, 8)
If Cel = "JT" Then
If DateD >= Cells(Cel.Row, 6) And (DateD <= Cells(Cel.Row, 7) Or
Cells(Cel.Row, 7) = "") Then
For i = 1 To Cel.Count
If Month(DateD) = 12 Then
Brut = Brut * 2
ElseIf Month(DateD) = 5 Then
Brut = Brut + (Brut * (1 / 30))
Else
Brut = Brut
End If
Brut = Application.WorksheetFunction.Substitute(Brut, ",", ".")
ici==> Brut = Brut & "" & Brut(i) & "" & ","
Next i
ici==> .Cells(Ligne, 4) = "=sum(" & Brut & ")"

End If


Daniel

unread,
Jul 13, 2007, 4:42:15 AM7/13/07
to
Bonjour.
Sans voir l'agencement des données, c'est difficile à comprendre.
Peux-tu mettre un classeur exemple, en effaçant les données confidentielles,
sur www.cjoint.com
Cordialement.
Daniel
"François" <pasd...@merci.com> a écrit dans le message de news:
erxQRqNx...@TK2MSFTNGP02.phx.gbl...

François

unread,
Jul 13, 2007, 9:34:59 AM7/13/07
to
Bonjour Daniel,

Je te remercie pour ton aide. Ci joint le fichier en question.
http://cjoint.com/?hnpIh2MOBL
Je reste à ta disposition pour tout complément d'info.

Cordialement.
François
"Daniel" <dZZZcol...@free.fr> a écrit dans le message de news:
OA3vzmSx...@TK2MSFTNGP05.phx.gbl...

Daniel

unread,
Jul 13, 2007, 11:09:12 AM7/13/07
to
Je ne comprends pas ce que tu fais avec la variable "brut", tu fais des
calculs, et après, tu veux remplacer la virgule par un point ? Quel est ton
caractère décimal ? Peux-tu donner un exemple de ce que tu veux ? Le code
que tu as publié dans ton premier post n'est pas tout à fait le même que
celui de la macro.

Daniel
"François" <pasd...@merci.com> a écrit dans le message de news:
eV0abKVx...@TK2MSFTNGP03.phx.gbl...

François

unread,
Jul 13, 2007, 11:36:05 AM7/13/07
to
Daniel,

La variable brut me permet, si le mois = 12 de multiplier la valeur par 2
(Cells(Cel.row,8)) car c'est un mois qui compte double.

Dans les paramètres régionaux, mon caractère décimal est la virgule. La
macro en question s'appelle "Sub RemplirTableau"

Résultat recherché : Chaque fois que ma valeur en colonne 1 = "JT", je
prends la valeur brut, je teste le mois (variable brut), et je positionne ce
montant dans une fonction somme.
Exemple : Si JT = 4, j'aurais "=Sum(Brut1, Brut2, Brut3, Brut4)
Si JT = 2, j'aurais "=Sum(Brut1, Brut2)

Merci encore pour ton aide.

"Daniel" <dZZZcol...@free.fr> a écrit dans le message de news:

ugrqA$VxHHA...@TK2MSFTNGP05.phx.gbl...

isabelle

unread,
Jul 13, 2007, 11:56:54 AM7/13/07
to
bonjour Francois,

d = "=Sum("
For i = 1 To 4
d = d & "Brut" & i & ","
Next
Range("A1") = Left(d, Len(d) - 1) & ")"

isabelle

François a écrit :

François

unread,
Jul 13, 2007, 2:37:09 PM7/13/07
to
Bonjour Isabelle,

Merci pour ta réponse.

Sauf que brut1, 2,... = un nombre donc la formule doit devenir
=Sum(100;256;...)

Comment faire car là, je suis vraiment bloqué !

Merci encore

"isabelle" <i@v> a écrit dans le message de news:
euQtpZWx...@TK2MSFTNGP05.phx.gbl...

isabelle

unread,
Jul 13, 2007, 3:38:23 PM7/13/07
to
est ce qu'il faut que la formulle soit placer dans une cellule, ou seulement sont résultat ?

isabelle

François a écrit :

François

unread,
Jul 13, 2007, 3:57:26 PM7/13/07
to
Seulement son résultat.

François


"isabelle" <i@v> a écrit dans le message de news:

%23BUHaVY...@TK2MSFTNGP05.phx.gbl...

isabelle

unread,
Jul 13, 2007, 4:19:42 PM7/13/07
to
voici un exemple,

Sub macro1()
Brut1 = 10
Brut2 = 10
Brut3 = 10
Brut4 = 10
v = Array(Brut1, Brut2, Brut3, Brut4)
For i = 0 To 3
resultat = resultat + v(i)
Next
MsgBox resultat
End Sub

isabelle

François a écrit :

François

unread,
Jul 13, 2007, 5:45:00 PM7/13/07
to
Bonsoir Isabelle,

Désolé, je n'arrive pas à l'adapter. Ci dessous un exemple. c'est un fichier
dans les lignes sont variables >100 !

Service Montant1 Montant n
JT 100 20
HJ 150 39
YU 20 49
JT 35 56

Je ne passe pas par la fonction sommeprod, car selon la colonne de montant
(n), une opération s'effectue sur la valeur.

Résultat = Si Service = JT alors somme(100;35;somme(20*2;56*2);somme(n))

Je te remercie encore pour tes lumières !

Cordialement,


François
"isabelle" <i@v> a écrit dans le message de news:

OzmUgsYx...@TK2MSFTNGP06.phx.gbl...

isabelle

unread,
Jul 14, 2007, 9:10:10 AM7/14/07
to
bonjour Francois dit moi si j'ai bien compris,

si Service=JT alors =somme(100;35) + somme((20*2);(56*2)) + somme(20;39;49;56)

isabelle

François a écrit :

François

unread,
Jul 16, 2007, 9:43:57 AM7/16/07
to
Bonjour Isabelle,

Montant 1 à N représente des mois de 1 à 12.

Effectivement, ta proposition est bonne sauf pour la dernière occurence.
L'idée était excel recherche pour chaque ligne où le service = JT, il
récupère la cellule JT + 8, et qu'il place la valeur trouvée dans une
fonction somme qui s'incrémente des valeurs trouvées !

En tout cas merci beaucoup !

Cordialement,
François
"isabelle" <i@v> a écrit dans le message de news:

%23jmtIhh...@TK2MSFTNGP03.phx.gbl...

0 new messages