A voir également:
- [VB-EXCEL] Insertion variable dans formule
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule somme excel colonne - Guide
- Excel mise en forme conditionnelle formule - Guide
- Liste déroulante excel - Guide
28 réponses
ben oui.. dans ton vb..
ex:
for MaVar =1 to 5
.formula="=b" & MaVar
next
enfin, la ca marche pas car y a pas de with blabla.cell(y,x).. se rapportant à .formula mais le principe est là..
Sinon, balance ton code vb ;)
ex:
for MaVar =1 to 5
.formula="=b" & MaVar
next
enfin, la ca marche pas car y a pas de with blabla.cell(y,x).. se rapportant à .formula mais le principe est là..
Sinon, balance ton code vb ;)
Je ne peux joindre de fichier c'est pour le taff et pas le droit de partager les données personnelles :s
Bref alors On veut compter le nombre de cases vertes dans une colonnes donc les dates valides
Seulement on ne peut compter la couleur directement on doit donc compter les dates valides (selon la condition avec AUJOURD'HUI()....)
Mais on doit calculer tout particulièrement les dates en colonne D par exemple valides avec sur la même ligne en colonne A une valeur "A" par exemple et une valeur "C" par exemple en colonne C
j'en arrive au problème ou en fait la valeur que l'on veut mettre dans la condition concernant la colonne C doit être désignée via la list box (ex si sélection de case 1 dans listbox, var = 1 etc . . .)
$D$2 un nombre (de jour je porésume) <------- un nombre d'années d'où dans la formule le *365
Bref alors On veut compter le nombre de cases vertes dans une colonnes donc les dates valides
Seulement on ne peut compter la couleur directement on doit donc compter les dates valides (selon la condition avec AUJOURD'HUI()....)
Mais on doit calculer tout particulièrement les dates en colonne D par exemple valides avec sur la même ligne en colonne A une valeur "A" par exemple et une valeur "C" par exemple en colonne C
j'en arrive au problème ou en fait la valeur que l'on veut mettre dans la condition concernant la colonne C doit être désignée via la list box (ex si sélection de case 1 dans listbox, var = 1 etc . . .)
$D$2 un nombre (de jour je porésume) <------- un nombre d'années d'où dans la formule le *365
Seulement on ne peut compter la couleur directement :
Ah bon?? et ca sert a quoi le vba ?? avec : Interior.ColorIndex
mais bon.. apres tu parle d une listbox.. y en a une seul ou y en a une par ligne ?
Ah bon?? et ca sert a quoi le vba ?? avec : Interior.ColorIndex
mais bon.. apres tu parle d une listbox.. y en a une seul ou y en a une par ligne ?
J'ai déjà fait une synthèse similaire sur une autre feuille du classeur qui se met à jour toute seule selon les changements de dates en feuille 1 grâce aux formules donc la je n'avais pas besoin de code.
J'ai voulu reprendre cette formule et l'allonger...l'allongerrrr
Mais la ton idée de
me plais :) mais je ne connais pas du tout l'utilisation :s
Peux tu me taper la ligne de code qui correspondrait à l'action suivante :
calcul du nombre de cellules vertes + nombre de cellules oranges dans la colonne L de la cellule L7 à la L807 s'il te plait.
Je vais préparer le pc! je finis le taff dans 2h - 2h30 et il faudrait que un fonctionnement basic opérationnel pour aider mes collegues :s merci beaucoup en tous cas :)
J'ai voulu reprendre cette formule et l'allonger...l'allongerrrr
Mais la ton idée de
Interior.ColorIndex
me plais :) mais je ne connais pas du tout l'utilisation :s
Peux tu me taper la ligne de code qui correspondrait à l'action suivante :
calcul du nombre de cellules vertes + nombre de cellules oranges dans la colonne L de la cellule L7 à la L807 s'il te plait.
Je vais préparer le pc! je finis le taff dans 2h - 2h30 et il faudrait que un fonctionnement basic opérationnel pour aider mes collegues :s merci beaucoup en tous cas :)
For ligne = 7 To 807
CouleurCell = Worksheets("Feuil1").Cells(ligne, 12).Interior.ColorIndex 'A=1,B=2... => L=12
If CouleurCell = 44 Then NbOrange = NbOrange + 1
If CouleurCell = 4 Then NbVert = NbVert + 1
Next
msgbox "nb total = " & NbOrange + NbVert
CouleurCell = Worksheets("Feuil1").Cells(ligne, 12).Interior.ColorIndex 'A=1,B=2... => L=12
If CouleurCell = 44 Then NbOrange = NbOrange + 1
If CouleurCell = 4 Then NbVert = NbVert + 1
Next
msgbox "nb total = " & NbOrange + NbVert
en attendant ta réponse j'ai eu le temps d'essayer ça :
cela correspond? est ce faux? j'optient 0 ! oO
pendant que tu te penches dessus je vais tester ton code :)
Dim i As Integer Dim nbv As Integer nbv = 0 Feuil1.Select Range("L7").Select For i = 7 To 907 Step 1 If Cells(i, 12).Interior.ColorIndex = 4 Then nbv = nbv + 1 End If Next Feuil5.Range("A1").Value = nbv
cela correspond? est ce faux? j'optient 0 ! oO
pendant que tu te penches dessus je vais tester ton code :)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Au fait excuse moi l'erreur se trouve là :
CouleurCell = Worksheets("Feuil1").Cells(ligne, 12).Interior.ColorIndex
et bien sur sur ton document à toi ça marche j'ai testé :'(
CouleurCell = Worksheets("Feuil1").Cells(ligne, 12).Interior.ColorIndex
et bien sur sur ton document à toi ça marche j'ai testé :'(
J'ai trouvé "Worksheets("Feuil1")." il aimait pas.
Par contre ça me compte 0 case verte alors qu'elles le sont via la mise en forme conditionnelle :
https://www.excel-pratique.com/~files/doc2/MFC1.jpg
Par contre ça me compte 0 case verte alors qu'elles le sont via la mise en forme conditionnelle :
https://www.excel-pratique.com/~files/doc2/MFC1.jpg
hein??? comprend pas.. j ai jamais fait référence à un jpg moi..
mdr mais non c'est un screenshot des 3 formules avec leur code couleur que contient la mise en forme conditionnelle appliquée aux cellules
Et je te montre par ce screenshot qu'il y a pourtant bel et bien des cellules vertes dans le tableau
Au fait j'ai testé pour la couleur allant de 1 à 50 et il me trouve toujours 0 :s
Et je te montre par ce screenshot qu'il y a pourtant bel et bien des cellules vertes dans le tableau
Au fait j'ai testé pour la couleur allant de 1 à 50 et il me trouve toujours 0 :s
ah ben si tu dis pas tout aussi !!!
couleur par mise en forme conditionnelle, ca change tout... et donc ca marche pas avec Interior.ColorIndex qui lui ne marche que si tu coloris la case via le ptit pinceau...
Bon, ok, je sais xl, c est pourri.. tu as l impression que c'est pareil, mais bon ;)
J me renseigne ;)
couleur par mise en forme conditionnelle, ca change tout... et donc ca marche pas avec Interior.ColorIndex qui lui ne marche que si tu coloris la case via le ptit pinceau...
Bon, ok, je sais xl, c est pourri.. tu as l impression que c'est pareil, mais bon ;)
J me renseigne ;)
je lache pas.. j apprend en meme temps..
voici un ptit tuto.. bon, lien en anglais, mais perso, ca me derange pas ;)
https://www.excel-downloads.com/threads/detection-couleur-mfc.99000/
Je potasse ca et te donne la soluce ;)
voici un ptit tuto.. bon, lien en anglais, mais perso, ca me derange pas ;)
https://www.excel-downloads.com/threads/detection-couleur-mfc.99000/
Je potasse ca et te donne la soluce ;)
ok..
voici mon fichier qui marche avec mise en condition ;)
http://dl.free.fr/getfile.pl?file=/jnw3ZKqr
voici mon fichier qui marche avec mise en condition ;)
http://dl.free.fr/getfile.pl?file=/jnw3ZKqr
Merci tu déchires on voit le bout
mais :D il y a un mais
je ne comprends pas tout je dois récup tout le code et le mettre dans un module?
et pour ce qui est de compter les cases vertes, il me faut le nombre de case vertes en colonne "L" mais il ne faut pas oublier que la case n'est compter QUE si sur la même ligne :
- la case en F = A ou B ou C
&
- la case en C = QQCHOSE
Comme je n'y comprends pas grand chose au code ou et comment dois-je placer la condition :s
mais :D il y a un mais
je ne comprends pas tout je dois récup tout le code et le mettre dans un module?
et pour ce qui est de compter les cases vertes, il me faut le nombre de case vertes en colonne "L" mais il ne faut pas oublier que la case n'est compter QUE si sur la même ligne :
- la case en F = A ou B ou C
&
- la case en C = QQCHOSE
Comme je n'y comprends pas grand chose au code ou et comment dois-je placer la condition :s
il te faudra le module au complet dans ton fichier xl...
ptite précision pour la suite ... A B ou C.. c'est du texte dedans ou c'est aussi une mise en forme conditionnelle?? pareil pour la colonne C..
ptite précision pour la suite ... A B ou C.. c'est du texte dedans ou c'est aussi une mise en forme conditionnelle?? pareil pour la colonne C..
que du texte la mise en forme conditionnelle ne concerne que les dates
Sans plus de précisions, si tu préfères, dans cette synthèse C sera le "service" et F "le poste/statut" si c'est plus clair ^^ c'est une image
Sans plus de précisions, si tu préfères, dans cette synthèse C sera le "service" et F "le poste/statut" si c'est plus clair ^^ c'est une image
Et mon code ? ben c'est simple c'est copier la formule que j'essaye d'obtenir dans ce sujet
donc tu as un tableau avec :
En colonne A une suite de cellule avec "A","B" ou "C" ex de A1:A4 ="A", A5:A8="B", A9:A20="C"
plein de date dans la colone D
en $D$2 un nombre (de jour je porésume)
Colonne B et C on s en fou...
et tu veux savoir
problématique:
combien de date en D pour le groupe de cellule identique en colonne A (donc pour A1:A4 et A5:A8 et A9:A20) sont inférieur à AUJOURDHUI()-$D$2 donc plus vieille que les 12 dernier jour si $D$2 = 12..
c'est ca?? Sinon, dis moi ta problématique