J'e vois de toutes les couleurs

cs_fred le novice Messages postés 6 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 29 avril 2005 - 21 avril 2005 à 10:21
nostra78 Messages postés 137 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 6 décembre 2005 - 21 avril 2005 à 11:49
Salut a tous les cracks !

Je suis novice sur VB (excel) et je rencontre quelques petits pb...
Je voudrais effectuer en A1 l'opération suivante:
SOMMEPRODUIT[(valeur des cases de couleur rouge(exE1))*(valeur des cellules vertes (dans la colonne précédent chaque cellule rouge (ex D1))]/(SOMME des cellules vertes)

sachant que mon nb de cellules rouges (et vertes) est variable et que chaque cellule rouge est espacée de 4 colonnes avec la suivante. Toutes les cellules concernées se trouvent sur la même ligne.

Quelqu'un peut me proposer une procédure?

6 réponses

nostra78 Messages postés 137 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 6 décembre 2005
21 avril 2005 à 10:50
Test ca
Par contre pour le produit je ne sais pas exactement ce que tu veux
Repond ci c ca*

Sub Macro1()
Dim cellule As Range
Dim Cpt
Dim Produit As Integer
Dim Somme As Integer
Cpt = Range("A1").SpecialCells(xlLastCell).Address
For Each cellule In ThisWorkbook.Sheets("Feuil1").Range("A1:" & Cpt)
If cellule.Interior.ColorIndex = 10 Then
Somme = Somme + cellule.Value
Produit = Produit + (cellule.Value) * (cellule.Offset(0, 1).Range("A1").Value)
End If
Next
Range("A1").Value = Produit / Somme
End Sub
0
cs_fred le novice Messages postés 6 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 29 avril 2005
21 avril 2005 à 11:22
quand j'essaie d'utiliser ta macro il me renvoie "dépassement de capacité"
je sais pas ce que ça signifie...
0
nostra78 Messages postés 137 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 6 décembre 2005
21 avril 2005 à 11:34
Sur quelle ligne???
0
nostra78 Messages postés 137 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 6 décembre 2005
21 avril 2005 à 11:35
EN CAS REMPLACE les integer par long
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_fred le novice Messages postés 6 Date d'inscription mardi 14 novembre 2000 Statut Membre Dernière intervention 29 avril 2005
21 avril 2005 à 11:43
ça marche!!
merci pour ton aide!
comment tu connais le code des couleurs (vert=10)?
0
nostra78 Messages postés 137 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 6 décembre 2005
21 avril 2005 à 11:49
Tu utilises l'aide de vb. tu tapes F1 et tu mets ColorIndex
Rq : quand tu es satisfais du code que l'on donne valide la réponse ça évite aux autres d'aller voir topic alors que le pb est résolu.
@+ Nostra78
0
Rejoignez-nous