Zone de liste déroulante, récupération de données via le result de
19 réponses
rododuc
Bonjour,
j'ai un tableau à deux colonnes:
Heures | Visiteurs
00h | 41000
01h | 45000
...
J'ai fait deux zone de liste déroulantes, heure début et heure de fin.
Les listes se basent sur les heures et je voudrais soit par une macro (click
bouton) ou directement via une formule récupérer la sommes de visiteurs de
par exemple 00h à 01h... Mais j'avoue ne pas y arriver.
Auriez-vous des infos ?
Colonne A : Heures Colonne C : Visiteurs Cellule F17 : Heure de début Cellule G17 : Heure de fin
Celà donne le code : On Error Resume Next Début = Columns("A:A").Find(What:=Range("F17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row Fin = Columns("A:A").Find(What:=Range("G17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row MsgBox (Range("C" & Fin) - Range("C" & Début))
Choisi en F17 une heure de début et en G17 une heure de fin Clique sur le bouton "Total Visiteurs"
Les réponses sont souvent négatives car tes chiffres d'une heure sur l'autre sont décroissants
00h : 176961 01h : 79856
Une perte de fréquentation ?????
Fais des essais et dis moi !!!!!!
Rebonjour à toi
Colonne A : Heures
Colonne C : Visiteurs
Cellule F17 : Heure de début
Cellule G17 : Heure de fin
Celà donne le code :
On Error Resume Next
Début = Columns("A:A").Find(What:=Range("F17"), After:=Range("A5"),
LookIn:=xlValues, LookAt:=xlWhole).Row
Fin = Columns("A:A").Find(What:=Range("G17"), After:=Range("A5"),
LookIn:=xlValues, LookAt:=xlWhole).Row
MsgBox (Range("C" & Fin) - Range("C" & Début))
Colonne A : Heures Colonne C : Visiteurs Cellule F17 : Heure de début Cellule G17 : Heure de fin
Celà donne le code : On Error Resume Next Début = Columns("A:A").Find(What:=Range("F17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row Fin = Columns("A:A").Find(What:=Range("G17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row MsgBox (Range("C" & Fin) - Range("C" & Début))
Choisi en F17 une heure de début et en G17 une heure de fin Clique sur le bouton "Total Visiteurs"
Les réponses sont souvent négatives car tes chiffres d'une heure sur l'autre sont décroissants
00h : 176961 01h : 79856
Une perte de fréquentation ?????
Fais des essais et dis moi !!!!!!
rododuc
Bonjour,
A quoi correspond le N ?
Cordialement.
"FdeCourt" wrote:
Si les valeurs des heures ne sont pas toujours inférieures à 1, essayes avec cette formule : =SI(de>a;SOMMEPROD((visiteurs)*N(heures2>Þ)+(visiteurs)*N (heures2<=a));SOMMEPROD((visiteurs)*(heures2>Þ)*(heures2<=a)))
J'ai ajouté un nom "heures2" qui a comme formule : =TEMPS(HEURE (heures);MINUTE(heures);SECONDE(heures))
Cordialement,
F. .
Bonjour,
A quoi correspond le N ?
Cordialement.
"FdeCourt" wrote:
Si les valeurs des heures ne sont pas toujours inférieures à 1,
essayes avec cette formule :
=SI(de>a;SOMMEPROD((visiteurs)*N(heures2>Þ)+(visiteurs)*N
(heures2<=a));SOMMEPROD((visiteurs)*(heures2>Þ)*(heures2<=a)))
J'ai ajouté un nom "heures2" qui a comme formule : =TEMPS(HEURE
(heures);MINUTE(heures);SECONDE(heures))
Si les valeurs des heures ne sont pas toujours inférieures à 1, essayes avec cette formule : =SI(de>a;SOMMEPROD((visiteurs)*N(heures2>Þ)+(visiteurs)*N (heures2<=a));SOMMEPROD((visiteurs)*(heures2>Þ)*(heures2<=a)))
J'ai ajouté un nom "heures2" qui a comme formule : =TEMPS(HEURE (heures);MINUTE(heures);SECONDE(heures))
Cordialement,
F. .
FdeCourt
Salut,
Le N permet de transformer un Vrai ou Faux en 0 ou 1. Car par exemple 50 x Vrai ne renvoit rien, alors que 50 x 1 renvoi 50
Cordialement,
F.
Salut,
Le N permet de transformer un Vrai ou Faux en 0 ou 1.
Car par exemple 50 x Vrai ne renvoit rien, alors que 50 x 1 renvoi 50
Le N permet de transformer un Vrai ou Faux en 0 ou 1. Car par exemple 50 x Vrai ne renvoit rien, alors que 50 x 1 renvoi 50
Cordialement,
F.
rododuc
Re,
Toujours pas malheureusement. Si je veux cumuler mes valeurs qui sont comprises de 22h à 02h. J'ai 0... La formule n'arrive pas à cumuler les 24+25+1+2 (22h+23h+revenir à 0h+01h)...
Le N permet de transformer un Vrai ou Faux en 0 ou 1. Car par exemple 50 x Vrai ne renvoit rien, alors que 50 x 1 renvoi 50
Cordialement,
F. .
Re,
Toujours pas malheureusement.
Si je veux cumuler mes valeurs qui sont comprises de 22h à 02h.
J'ai 0... La formule n'arrive pas à cumuler les 24+25+1+2 (22h+23h+revenir à
0h+01h)...
Toujours pas malheureusement. Si je veux cumuler mes valeurs qui sont comprises de 22h à 02h. J'ai 0... La formule n'arrive pas à cumuler les 24+25+1+2 (22h+23h+revenir à 0h+01h)...
Le N permet de transformer un Vrai ou Faux en 0 ou 1. Car par exemple 50 x Vrai ne renvoit rien, alors que 50 x 1 renvoi 50
Cordialement,
F. .
FdeCourt
Pourrais-tu poster un extrait de ton fichier ? Ca sera plus simple pour comprendre pourquoi cela ne fonctionne pas. Je viens de faire le test chez moi, et c'est bon.
Cordialement,
F.
Pourrais-tu poster un extrait de ton fichier ?
Ca sera plus simple pour comprendre pourquoi cela ne fonctionne pas.
Je viens de faire le test chez moi, et c'est bon.
Pourrais-tu poster un extrait de ton fichier ? Ca sera plus simple pour comprendre pourquoi cela ne fonctionne pas. Je viens de faire le test chez moi, et c'est bon.
Cordialement,
F.
rododuc
Pour info voilà ma feuille excel pour plus de compréhension. http://www.cijoint.fr/cjlink.php?file=cj200912/cijMJLqFEk.xls
"FFO" wrote:
Rebonjour à toi
Colonne A : Heures Colonne C : Visiteurs Cellule F17 : Heure de début Cellule G17 : Heure de fin
Celà donne le code : On Error Resume Next Début = Columns("A:A").Find(What:=Range("F17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row Fin = Columns("A:A").Find(What:=Range("G17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row MsgBox (Range("C" & Fin) - Range("C" & Début))
Choisi en F17 une heure de début et en G17 une heure de fin Clique sur le bouton "Total Visiteurs"
Les réponses sont souvent négatives car tes chiffres d'une heure sur l'autre sont décroissants
00h : 176961 01h : 79856
Une perte de fréquentation ?????
Fais des essais et dis moi !!!!!!
Pour info voilà ma feuille excel pour plus de compréhension.
http://www.cijoint.fr/cjlink.php?file=cj200912/cijMJLqFEk.xls
"FFO" wrote:
Rebonjour à toi
Colonne A : Heures
Colonne C : Visiteurs
Cellule F17 : Heure de début
Cellule G17 : Heure de fin
Celà donne le code :
On Error Resume Next
Début = Columns("A:A").Find(What:=Range("F17"), After:=Range("A5"),
LookIn:=xlValues, LookAt:=xlWhole).Row
Fin = Columns("A:A").Find(What:=Range("G17"), After:=Range("A5"),
LookIn:=xlValues, LookAt:=xlWhole).Row
MsgBox (Range("C" & Fin) - Range("C" & Début))
Pour info voilà ma feuille excel pour plus de compréhension. http://www.cijoint.fr/cjlink.php?file=cj200912/cijMJLqFEk.xls
"FFO" wrote:
Rebonjour à toi
Colonne A : Heures Colonne C : Visiteurs Cellule F17 : Heure de début Cellule G17 : Heure de fin
Celà donne le code : On Error Resume Next Début = Columns("A:A").Find(What:=Range("F17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row Fin = Columns("A:A").Find(What:=Range("G17"), After:=Range("A5"), LookIn:=xlValues, LookAt:=xlWhole).Row MsgBox (Range("C" & Fin) - Range("C" & Début))
Pourrais-tu poster un extrait de ton fichier ? Ca sera plus simple pour comprendre pourquoi cela ne fonctionne pas. Je viens de faire le test chez moi, et c'est bon.
Pourrais-tu poster un extrait de ton fichier ?
Ca sera plus simple pour comprendre pourquoi cela ne fonctionne pas.
Je viens de faire le test chez moi, et c'est bon.
Pourrais-tu poster un extrait de ton fichier ? Ca sera plus simple pour comprendre pourquoi cela ne fonctionne pas. Je viens de faire le test chez moi, et c'est bon.
Cordialement,
F. .
FdeCourt
Salut,
Si le calcul ne se fait pas correctement, c'est parceque les heures ne sont pas au format heure, mais au format texte. La comparaison ne peut donc se faire correctement. Pour changer cela, dans les cellules I17 et J17, change la formule par : pour I17 : =TEMPS(F17-1;;) pour J17 : =TEMPS(G17-1;;)
Puis change la référence de heures2 par : =TEMPS(CNUM(GAUCHE(heures;2));CNUM(DROITE(heures;2));0)
Et la ça devrait fonctionner (en tout cas, chez moi, cela fonctionne) :
Si le calcul ne se fait pas correctement, c'est parceque les heures ne
sont pas au format heure, mais au format texte. La comparaison ne peut
donc se faire correctement.
Pour changer cela, dans les cellules I17 et J17, change la formule
par :
pour I17 : =TEMPS(F17-1;;)
pour J17 : =TEMPS(G17-1;;)
Puis change la référence de heures2 par :
=TEMPS(CNUM(GAUCHE(heures;2));CNUM(DROITE(heures;2));0)
Et la ça devrait fonctionner (en tout cas, chez moi, cela
fonctionne) :
Si le calcul ne se fait pas correctement, c'est parceque les heures ne sont pas au format heure, mais au format texte. La comparaison ne peut donc se faire correctement. Pour changer cela, dans les cellules I17 et J17, change la formule par : pour I17 : =TEMPS(F17-1;;) pour J17 : =TEMPS(G17-1;;)
Puis change la référence de heures2 par : =TEMPS(CNUM(GAUCHE(heures;2));CNUM(DROITE(heures;2));0)
Et la ça devrait fonctionner (en tout cas, chez moi, cela fonctionne) :