XL 2010 Bouclage semaine sur une saison + fonction recherche

yannk

XLDnaute Nouveau
Bonjour à tous,

Je souhaite pondérer la puissance froid d'une patinoire à l'année en fonction des relevés d'une semaine.
J'aimerais ainsi créer une boucle sur la semaine afin que toutes les 2016 valeurs, on passe à la semaine suivante, le problème est que je ne maîtrise pas VBA. J'ai essayé d'avancer de mon côté sans l'utiliser mais je pense que cela peut-être optimisé.

Procédure suivie : afin de créer chacun des jours, j'ai inscrit le 1er jour de la saison (09 septembre) puis j'ai ajouté 0.0034722222 correspondant à 5min dans Excel jusqu'au dernier jour de la saison (19 mars). Ensuite la puissance calorifique est répétée toutes les semaines avec une simple fonction =C3 au 7ème jour soit la 2019ème cellule (19/12) le numéro de la semaine a été retrouvé avec la fonction WEEKNUM.
La pondération se fera ensuite à l'aide du tableau donnée à côte en pièces jointe avec la formule suivante
=LOOKUP(Sheet1!C3,Sheet1!$K$3:$K$31,Sheet1!$L$3:$L$31).

Problèmes rencontrées et demandes :
A partir de la semaine 52 la fonction LOOKUP bug et je ne comprends pas pourquoi.
Est-il possible d'afficher la saison directement par exemple en entrant le premier jour et le dernier jour et qu'il affiche le tout par pas de 5min puis qu'il fasse la boucle sur la puissance froid sur l'ensemble de la saison

Vous trouverez dans le fichier de la semaine 51 à la semaine 2 de l’année suivante là où les problèmes apparaissent.

J'espère avoir été assez clair, je reste à votre disposition pour toute question et reste ouvert à toute autre possibilité d'amélioration.

Cordialement,
Yann
 

Pièces jointes

  • Example Date+1.xlsx
    1.4 MB · Affichages: 43

chris

XLDnaute Barbatruc
Bonjour

Aide en ligne sur cette fonction "Important Les valeurs de la matrice doivent être placées en ordre croissant"
Utiliser
Code:
 =RECHERCHEV(Sheet1!$D3;Sheet1!$L$3:$N$31;COLONNE(B3);0)
en E3 à recopier en F3 puis sur toutes les lignes.

Utiliser =NO.SEMAINE(B3;21) pour la semaine selon notre norme ISO (même si cette année ISO et US coïncident...)
 

yannk

XLDnaute Nouveau
Re,

Merci pour votre rapide retour, je ne savais pas que la matrice devait être en ordre croissant pour la fonction RECHERCHE, en effet avec la fonction RECHERCHEV, cela fonctionne mieux.

Je n'ai pas compris la différence entre votre formule est la mienne pour le numéro de la semaine, les résultats sont identiques.

Une idée concernant le bouclage pour déterminer la saison par pas de 5 min et pour affecter la puissance froid à chaque fois ?

Merci de votre aide en tout cas,
Yann
 

chris

XLDnaute Barbatruc
RE

Les américains et nous ne numérotons pas les semaines selon la même règle.
Cette année nos deux méthodes coïncident mais ce n'était pas le cas en 2016.
Il est donc préférable d'utiliser la bonne méthode...

Je n'ai pas compris ce que tu attends pour la boucle...
 

yannk

XLDnaute Nouveau
Re,

Compris pour les dates, merci.

Concernant la boucle tu trouveras les données originales dans la feuille 1 du fichier joint et les résultats attendus dans la feuille 2.
En gros je pars d'un fichier semaine (feuille 1) que je veux étendre sur une saison entière. J'aimerais en donnant par exemple le début de la saison et la fin de la saison que Excel me donne toutes les dates par pas de 5min. Puis répéter la puissance froid nécessaire pour une semaine sur l'année (Feuille 2). La pondération selon la température se fera ensuite comme vu précédemment

Pour le moment j'ai trouvé à tâtons que 5min valait 0.0034722222 dans Excel du coup j'ai noté la première date puis j'ai ajouté cette valeur dans la deuxième et j'ai étiré jusqu'à la fin de la saison. Ensuite j'ai vu que le 12 décembre fichier était un lundi et que le 9 septembre un vendredi du coup j'ai placé la semaine type en conséquence (j'ai commencé du 16 au 18 qui représente vendredi à dimanche puis du 12 au 15 décembre de lundi à jeudi). Enfin j'ai copié la semaine sur la saison en marquant en B2019 : =B3 et en l'étirant.

Cette solution marche mais est fastidieuse. Je pense que cela peut être optimisé notamment avec une boucle.

Cordialement,
Yann
 

Pièces jointes

  • Example Date+1.xlsx
    863.6 KB · Affichages: 41

chris

XLDnaute Barbatruc
Re

1 journée vaut 1,
1 heure 1/24
1 minute 1/24/60 donc 5 mn 1/24/12 ou plus simplement 1/288

Le souci est que cela donne effectivement beaucoup de décimales et avec le calcul en virgule flottante d'Excel on a du mal à retrouver ses petits...

J'ai donc raisonné sur le fait qu'il y a 288 données par jour de la semaine pour associer la valeur de la feuille base à la date de la feuille Résultat attendus.

Une colonne en + dans la feuille base et cela fonctionne avec des formules.

J'en ai prévu sur 361 jours mais tu peux prévoir moins ou ajouter un soupçon de VBA pour ajuster...
 

Pièces jointes

  • Example Date2.zip
    4.4 MB · Affichages: 43

yannk

XLDnaute Nouveau
Bonjour,

Merci c'est exactement ce que je voulais. Seul petit problème que je vois, deux valeurs en plus apparaissent à la fin de la saison. C'est dans ce cas que tu parlais de VBA ? Si une idée je suis preneur pour ajuster sinon je les ôterais manuellement.

Merci de ton aide, si d'autres problèmes interviennent lors de l'élaboration de ce fichier je reviendrais vers toi.
Yann
 

Discussions similaires

Réponses
3
Affichages
461
Réponses
2
Affichages
352

Statistiques des forums

Discussions
315 098
Messages
2 116 190
Membres
112 679
dernier inscrit
Yupanki