Transformer un tableau par pas horaire en tableau mensuel

Bonjour,

J'ai un tableau comprenant 8760 lignes et 2 colonnes. La première correspond à l'heure de l'année (8760h), et la deuxième colonne me donne la valeur de production pour chaque heure.

Dans l'idée, j'aurai aimé créer une feuille par mois, comprenant chacune 24 lignes pour les heures par jour, et 31 colonnes pour les jours du mois, et retrouver dans chaque cellule, la valeur de production associée.

je suis débutante en VBA et je m'en sors pas trop. j'ai essayé de créer un tableau dynamique pour décomposer mon format date j/m/année heure en 4 colonnes avec année, mois, jour, heure et dans la cinquième colonne j'ai toujours la production.

J'ai créé ce code simplifié pour un seul mois (pour simplifier au début), mais qui ne fonctionne pas :

Dim Tableau As Variant
k = 1
For j = 2 To 14
For i = k + 1 To k + 24
Tableau(i, j) = Sheets("Feuil6").Cells(i, 3).Value
Sheets("Feuil9").Range(2, j) = Tableau(i, j)
Next i
k = k + 24
Next j

Est-ce que vous pouvez m'aiguiller ?

Bonjour,

Si je peux me permettre, quelle utilité de convertir une structure adéquate (et idéale pour l'analyse) en structure déconseillée (avec de l'info disséminée) ?
S'il s'agit d'un confort visuel, le tableau croisé dynamique devrait amplement suffire (avec possibilité de filtrer une journée spécifique).

Concernant VBA, une boucle for ne fonctionne pas comme ça pour la variable k. On précise une valeur de début de la variable, une valeur de fin et éventuellement un "pas" si l'incrément est différent de 1, par exemple For Variable = 1 To 100 Step 10.

bonjour,

J'ai besoin de tracer les courbes de production journalière par mois, je m'étais dis que c'était plus simple de le faire si j'avais le tableau mensuel.

Si je reformule du coup mon besoin, est-ce qu'à partir d'un tableau en deux colonnes comme j'ai, par pas horaire je peux facilement tracer tracer une courbe sur une mois avec en abscisse les heures de minuit à 23h, en ordonnée ma production ? et le faire pour tous les mois de l'année ?

Un tableau croisé dynamique, ou un graphique croisé dynamique sont conçus pour ce genre de chose. Si vous souhaitez une réponse plus précise, je vous invite à fournir un fichier type (même avec des données bidons du moment que la structure est similaire à l'original), ainsi qu'une "maquette" du résultat attendu.

Je vous joins un fichier type. Sur la première feuille les données brutes. Sur la deuxième feuille, le tableau dynamique. Sur la troisième feuille c'est le genre de courbe que j'aimerai avoir, et ce pour tous les mois. (ce n'est pas forcément les mêmes nombres entre les feuilles 2 et 3, j'ai mis des nombres aléatoires).

18test.zip (611.14 Ko)

Merci pour votre aide.

Ce que vous avez fait ne correspond pas à un tableau croisé dynamique, mais à une requête PowerQuery...
J'ai épuré votre fichier pour illustrer l'utilisation d'un graphique croisé dynamique appliqué directement sur les données brutes (contenues dans un tableau structuré). Les données de date_heure sont groupées, ce qui permet d'extraire les infos d'année, mois, jour (non affiché vu votre besoin) et heure.

Une simple actualisation à l'ajout de nouvelles données et tout fonctionne !

50test.zip (404.33 Ko)

merci beaucoup ! le fichier que je vous ai envoyé ne s'est pas mis à jour, est-ce que vous pouvez me renvoyer le fichier que vous avez modifié ?

merci beaucoup ! le fichier que je vous ai envoyé ne s'est pas mis à jour, est-ce que vous pouvez me renvoyer le fichier que vous avez modifié ?

C'est ma faute, j'ai oublié de joindre le fichier. J'ai édité mon précédent post.

C'est parfait, c'est exactement ce qu'il me fallait; Merci beaucoup

J'ai essayé de refaire le tableau pour obtenir le même résultat que vous. Le seul soucis que j'ai, c'est avec la colonne production. Lorsque je déplace l'onglet de valeurs, je n'obtiens pas le graphique avec la production mais avec le nombre de production par mois, soit 744 pour un mois de 31 jours. Est-ce qu'il y a une manip à a faire pour avoir la valeur de la cellule de production dans le graphique ?

J'ai essayé de refaire le tableau pour obtenir le même résultat que vous. Le seul soucis que j'ai, c'est avec la colonne production. Lorsque je déplace l'onglet de valeurs, je n'obtiens pas le graphique avec la production mais avec le nombre de production par mois, soit 744 pour un mois de 31 jours. Est-ce qu'il y a une manip à a faire pour avoir la valeur de la cellule de production dans le graphique ?

Le type d'opération (nombre, somme, moyenne, etc) réalisé dans un tableau croisé dynamique est paramétrable. Je vous invite à consulter cette page.

Rechercher des sujets similaires à "transformer tableau pas horaire mensuel"