|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : août 2011 Messages : 41 ![]() |
Bonjour,
deux problème avec ce codes, (j'applique mes filtre sur des dates!)1)- la valeure qu'il retourne est toujours 1, j'ai essayé de changé les données (dates) avec des strings est il retournes les vraies valeures. 2)- quand il retourne les vraies valeures, il éffaces l'ancien résultat dans la même cellule, il recompte dans la même cellule plusieurs fois. Ici je pense que c'est un problème de boucles. Merci. Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Explique-nous ce que tu veux faire exactement, parce qu'outre les problèmes de la macro, j'ai l'impression qu'il y a un gros problème de conception ici.
Je pense qu'avec des NB.SI ou ses équivalents VBA, ça serait 10 fois plus simple.
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 41 ![]() |
Soit F1 c'est Feuil1 et F2 c'est Feuil2
1.1) filtrer sur la colonne 7 dans F1 selon le critère ce trouvant dans la cellule (5,1). compter le nombre de cellule non vide dans la plage F1.(A2:A65536) et retourner le résultat dans la cellule F2.cells(5,2) 1.2) filtrer sur la colonne 8 dans F1 selon le critère ce trouvant dans la cellule (5,1). compter le nombre de cellule non vide dans la plage F1.(A2:A65536) et retourner le résultat dans la cellule F2.cells(5,3) 1.3) 1.4)...etc en augmente à chauqe fois le numéro de colonne dans laquelle on filtre ainsi que le numéro de colonne dans laquelle on veux le résultat. 2.1) cette fois on change le critère: filtrer sur la colonne 7 dans F1 selon le critère ce trouvant dans la cellule (6,1). compter le nombre de cellule non vide dans la plage F1.(A2:A65536) et retourner le résultat dans la cellule F2.cells(6,2) 2.2) filtrer sur la colonne 8 dans F1 selon le critère ce trouvant dans la cellule (6,1). compter le nombre de cellule non vide dans la plage F1.(A2:A65536) et retourner le résultat dans la cellule F2.cells(6,3) Voici un résumé: Colonne de filtre : F1.7 critère : F2.cells(5,1) résultat : F2.cells(5,2) Colonne de filtre : F1.8 critère : F2.cells(5,1) résultat : F2.cells(5,3) Colonne de filtre : F1.9 critère : F2.cells(5,1) résultat : F2.cells(5,4) Colonne de filtre : F1.7 critère : F2.cells(6,1) résultat : F2.cells(5,2) Colonne de filtre : F1.8 critère : F2.cells(6,1) résultat : F2.cells(5,3) Colonne de filtre : F1.9 critère : F2.cells(6,1) résultat : F2.cells(5,4) Colonne de filtre : F1.7 critère : F2.cells(7,1) résultat : F2.cells(5,2) Colonne de filtre : F1.8 critère : F2.cells(7,1) résultat : F2.cells(5,3) Colonne de filtre : F1.9 critère : F2.cells(7,1) résultat : F2.cells(5,4) |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Quand je disais ce que tu voulais faire, je ne parlais pas de ce que faisais ta macro, car ça il suffisait de la lire.
Ce que je voulais dire, c'est que j'ai l'impression que tu prends le marteau pilon pour écraser une mouche, avec en plus des risques d'erreurs bien supérieurs. Je te propose autre chose dès que j'ai un moment. Tu fais en B5 Et tu déroules cette formule sur le nombre de lignes et de colonnes que tu veux. Parce que sinon, tu peux aussi, copier les valeurs dans un autre classeur, le sauver en csv, l'ouvrir dans une base de donnée, l'encoder avec un algorithme de cryptage, le sérialiser en binaire, l'envoyer en ftp, lui faire un café, et demander à une personne de bonne volonté de compter manuellement le nombre d'occurence de chaque valeur dans chaque colonne... Ca va marcher aussi
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : août 2011 Messages : 41 ![]() |
Rebonjour.
Je ne peux pas utiliser cette fonction pour deux raisons entre autre:
D'ailleur c'est pour la rapidité du calcul que je veux utiliser une boucle sur un filtre! |
|
|
00
|
|
|
#6 |
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Dans ce cas, tu utilises exactement de la même manière
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
|
|
00
|
|
|
#7 | ||
|
Invité régulier
![]() Inscription : août 2011 Messages : 41 ![]() |
Rebonjour,
j'ai essayé votre code, il fonctionnne sur un argument, je ne sais pas comment faire un deuxième et n ème argument. Merci Code :
|
||
|
|
00
|
|
|
#8 | ||
|
Membre Expert
![]() Sebastien LIngénieur Financier Inscription : mars 2010 Messages : 880 ![]() |
Essaie avec le code suivant :
Code :
__________________
« Compter en octal, c’est comme compter en décimal, si on n’utilise pas ses pouces » - Tom Lehrer « Il est assez difficile de trouver une erreur dans son code quand on la cherche. C’est encore bien plus dur quand on est convaincu que le code est juste. » - Steve McConnell |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com