Jacky1002
Messages postés94Date d'inscriptionmardi 11 mai 2010StatutMembreDernière intervention 3 avril 2011
-
15 juil. 2010 à 09:58
Jacky1002
Messages postés94Date d'inscriptionmardi 11 mai 2010StatutMembreDernière intervention 3 avril 2011
-
15 juil. 2010 à 11:16
salut tout le monde
j'aurais besoin d'aide
je voudrais regrouper des valeurs contenue dans une feuille excel sous forme de base de donnée en fonction de 2 conditions et ensuite additionner ces valeur ensemble pour les réutilisée dans un calcul dans la meme macro.
je vous présente mon code :
Sub TRL_Mois()
Dim Rea As Variant, NC As Variant, Tps As Variant
For x = 1 To 12 'ici avec le x me sert à changer de colonne quand les i sont fini'
For i = 2 To 1000'ici je boucle pour lire toute les lignes'
If Sheets("Sachets").Range("D" & i).Value = Sheets("Stat Sachets").Cells(9, x + 4).Value And _ 'première condition'
Sheets("Sachets").Range("F" & i).Value = Sheets("Stat Sachets").Range("D10").Value Then'deusième condition
'cest ici que je galère je pense que je m'y prend mal'
Rea(i) = Rea(i - 1) + Sheets("Sachets").Range("K" & i).Value'ici j'essaye d'ajouterla valeur de Ki à la précédente valeur de Rea'
NC(i) = NC(i - 1) + Sheets("Sachets").Range("AB" & i).Value'idem avec ABi et NC
Tps(i) = Tps(i - 1) + ((Sheets("Sachets").Range("N" & i).Value) - (Sheets("Sachets").Range("O" & i).Value * 20) - (Sheets("Sachets").Range("P" & i).Value * 10)) 'là je tente une opération avec 3 référence de cellule'
' pour la fin je pnse pas avoir d'erreur mais bon sait on jamais. ah oui!! entre le next i et le next x je met une formule en espérant quelle soit faite à chaque que la boucle i et finie... est ce que ca marche vraiment comme ca??
End If
Next i
If Tps <> "" Then
Sheets("Stat Sachets").Cells(10, 4 + x).Value = ((CDec(Rea - NC) / CDec(Tps)) / 27)
End If
bigfish_le vrai
Messages postés1835Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention20 novembre 201315 15 juil. 2010 à 10:53
Salut,
Sub TRL_Mois()
Dim Rea() As Variant, NC() As Variant, Tps() As Variant
Dim i as integer, x as integer, NbLigne as integer, NbColonne as integer
NbLigne = 1000
NbColonne = 12
Redim Rea(NbLigne*NbColonne)
Redim NC(NbLigne*NbColonne)
Redim Tps(NbLigne*NbColonne)
For x = 1 To NbColonne 'ici avec le x me sert à changer de colonne quand les i sont fini'
For i = 2 To NbLigne'ici je boucle pour lire toute les lignes'
If Sheets("Sachets").Range("D" & i).Value = Sheets("Stat Sachets").Cells(9, x + 4).Value And _ 'première condition'
Sheets("Sachets").Range("F" & i).Value = Sheets("Stat Sachets").Range("D10").Value Then'deusième condition
'cest ici que je galère je pense que je m'y prend mal'
Rea(i) = Rea(i - 1) + Sheets("Sachets").Range("K" & i).Value'ici j'essaye d'ajouterla valeur de Ki à la précédente valeur de Rea'
NC(i) = NC(i - 1) + Sheets("Sachets").Range("AB" & i).Value'idem avec ABi et NC
Tps(i) = Tps(i - 1) + ((Sheets("Sachets").Range("N" & i).Value) - (Sheets("Sachets").Range("O" & i).Value * 20) - (Sheets("Sachets").Range("P" & i).Value * 10)) 'là je tente une opération avec 3 référence de cellule'
' pour la fin je pnse pas avoir d'erreur mais bon sait on jamais. ah oui!! entre le next i et le next x je met une formule en espérant quelle soit faite à chaque que la boucle i et finie... est ce que ca marche vraiment comme ca??
End If
Next i
If Tps <> "" Then
Sheets("Stat Sachets").Cells(10, 4 + x).Value = ((CDec(Rea - NC) / CDec(Tps)) / 27)
End If
Next x
End Sub
Pour commencer egarde le dimenssionement de tes variables tableau