Calcul d'écart type de température entre deux dates à rechercher

Résolu/Fermé
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 - 31 janv. 2013 à 11:17
 angie55 - 6 janv. 2016 à 16:55
Bonjour,

Voici mon problème : j'ai au départ des dates de localisation d'animal et en parallèle des dates de température associées à une valeur de température. J'aimerais calculer l'écart type des températures qui sont comprises entre mes dates de localisation. Pour beaucoup plus de clarté voir exemple joint! (si le fichier n'est pas là, pouvez vous me dire comment on fait pour joindre un doc excel).

Merci d'avance pour votre aide
Cordialement
Aurélia
A voir également:

9 réponses

chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 306
31 janv. 2013 à 11:19
Bonjour,

pour joindre un document : aller sur cjoint.com, créer un lien, et le copier-coller dans la suite de cette conversation.

Cordialement.
7
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 6
31 janv. 2013 à 11:23
Merci beaucoup (déjà un problème de résolu!)
donc voici le lien de l'exemple :

https://www.cjoint.com/c/CAFlvwkPKbC
2
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 6
31 janv. 2013 à 11:27
j'ai oublié de préciser que j'utilise excel 2003 et que je ne suis pas du tout familiarisée avec le language VBA.
1
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
31 janv. 2013 à 14:33
Bonjour,
Une combinaison Decaler /Equiv devrait permettre de définir le champ de température qui correspond aux dates/heures voulues.Il semble que la zone en bleu colonne I ne correspond pas à la règle: "dans ce cas là je veux partir de la date/heure température d'avant"

=ECARTYPEP(DECALER($G$2;EQUIV(E4;$G$3:$G$26;1);2;EQUIV(E5;$G$3:$G$26;1)-EQUIV(E4;$G$3:$G$26;1)+1;1))

Cette formule sera donc à vérifier et à adapter.
L'aide excel apporte des renseignements précieux sur les fonctions Decaler et Equiv.
1

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

Posez votre question
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 6
31 janv. 2013 à 15:31
Merci pour cette réponse. Je ne comprends pourtant pas tout.
J'essaie d'appliquer cette formule sur mon vrai tableau de données, et non l'exemple, c'est à dire en l'appliquant sur mes colonnes A, B et C. Je colle donc votre formule en D4 pour calculer "l'écart type des températures entre le 14/03/2012 04:07 (cellule A4) et le 15/03/2012 00:30 (cellule A5)" et je la transforme comme celà :
=ECARTYPEP(DECALER($B$2;EQUIV(A4;$B$3:$B$373;1);2;EQUIV(A5;$B$3:$B$373;1)-EQUIV(A4;$B$3:$B$373;1)+1;1))

Mon raisonnement doit être faux car il me renvoie la valeur #DIV/0! ...
1
allo comment trouve t on le pgcd. j'en ai marre
0
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
31 janv. 2013 à 15:59
L'argument ;2; décale la référence de 2 colonnes pour l'exemple cela permet de passer de la colonne G à la colonne i.
Dans le vrai tableau il faut passer cette valeur à 1 pour aller de la colonne B à la colonne C.
=ECARTYPEP(DECALER($B$2;EQUIV(A4;$B$3:$B$373;1);1;EQUIV(A5;$B$3:$B$373;1)-EQUIV(A4;$B$3:$B$373;1)+1;1))
1
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
31 janv. 2013 à 16:30
Bonjour,

je pense que la formule correspondant aux critères de départ de thommathieuserait plutôt
=ECARTYPEP(INDIRECT(ADRESSE(EQUIV(A3;$B$3:$B$373;1)+2;3));INDIRECT(ADRESSE(SIERREUR(EQUIV(A4;$B$3:$B$373;0);EQUIV(A4;$B$3:$B$373;1)+1)+2;3)))
A tester

Cordialement
0
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 6
31 janv. 2013 à 16:55
Bonjour via55, merci également pour votre aide. J'ai essayé votre formule (en D3) mais il me renvoie #NOM?. Quand vous le faites, vous arrivez à un résultat?

Cordialement,
Aurélia
0
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 6
31 janv. 2013 à 16:44
ok, désolée je n'ai jamais utilisé ces fonctions decaler et equiv. Mais en tout cas ça marche très bien. Si j'ai bien compris le seul problème pas résolu c'est que lorsque j'ai une date/heure de localisation qui n'existe pas dans la colonne date/heure température, il prend par défaut celle après et non celle avant...
exemple
date/heure localisation date/heure température température
12/03/2012 03:10 12/03/2012 03:05 9.2
12/03/2012 03:13 12/03/2012 03:15 9.4
12/03/2012 03:25 9.6
avec votre formule, il va prendre uniquement la valeur de température 9.4 alors que je voudrais qu'il prenne 9.2 ET 9.4 (donc les deux dates qui encadrent mes dates de localisation)
Est ce bien celà?
1
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
31 janv. 2013 à 17:14
Cette formule
=ECARTYPE(INDIRECT(ADRESSE(EQUIV(A3;$B$3:$B$373;1)+2;3));INDIRECT(ADRESSE(SIERREUR(EQUIV(A4;$B$3:$B$373;0);EQUIV(A4;$B$3:$B$373;1))+2;3)))

pour
13/03/2012 18:10
13/03/2012 19:10
calcule en partant de 13/03/2012 18:05 jusqu'à 13/03/2012 19:05

celle ci:
=ECARTYPE(INDIRECT(ADRESSE(EQUIV(A3;$B$3:$B$373;1)+2;3));INDIRECT(ADRESSE(SIERREUR(EQUIV(A4;$B$3:$B$373;0);EQUIV(A4;$B$3:$B$373;1)+1)+2;3)))
calcule en partant de 13/03/2012 18:05 jusqu'à 13/03/2012 19:15

L'une des 2 doit te convenir

Cordialement
0
thomathieu Messages postés 15 Date d'inscription jeudi 8 novembre 2012 Statut Membre Dernière intervention 4 mars 2014 6
31 janv. 2013 à 17:24
ok, il faut le dire : vous êtes très doués! Un grand merci à tous les deux, ça marche très bien.
A bientôt peut-être

Aurélia
1
tontong Messages postés 2549 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 23 avril 2024 1 054
Modifié par tontong le 31/01/2013 à 18:02
via55 a raison: dans une table triée par ordre croissant Index(val;champ;1) se positionne sur la valeur inférieure. C'est bon pour la première valeur du champ, c'est faux pour la dernière.
Il faut donc tester pour savoir si la valeur exacte est trouvée pour la date de fin. C'est la partie SIERREUR(EQUIV(A4;$B$3:$B$373;0);EQU.... de la formule proposée par via55.
Hélas SiErreur est apparu avec Excel 2007, avec 2003 il faut utiliser Si(EstErreur(...
La formule du#6 deviendrait:
=ECARTYPEP(DECALER($B$2;EQUIV(A4;$B$3:$B$373;1);1;EQUIV(A5;$B$3:$B$373;1)-EQUIV(A4;$B$3:$B$373;1)+1+SI(ESTERREUR( EQUIV(A5;$B$3:$B$373;0));1;0);1))

On peut aussi tester si la valeur exacte existe avec NB.SI
=ECARTYPEP(DECALER($B$2;EQUIV(A4;$B$3:$B$373;1);1;EQUIV(A5;$B$3:$B$373;1)-EQUIV(A4;$B$3:$B$373;1)+1+SI(NB.SI($B$3:$B$373;A5);0;1);1))
1