Tableau variable à 2 dimensions

Bonjour

Je viens vers vous aujourd'hui pour vous demander de l'aide pour la création d'une matrice à deux dimensions. Cela fait un bon moment que je cherche comment faire donc me voila sur ce forum, vous êtes mes jokers

Contexte:

-le contenu de ma feuille est créer à partir de la macro suivante (je vous ai joint le fichier):

Sub boucle_while()

Dim numero_jour, numero_heure As Integer

numero_jour = 1 'Numéro de départ (correspond ici au n° de ligne et au n° de numérotation)

nbr_jour = Range("A1").Value 'cette est variable c'est pour cela que je la déclare

numero_heure = 0

'colonne jour

While numero_jour <= nbr_jour 'Tant que la variable numero est <= nombre de jour du mois , la boucle est répétée

Cells(numero_jour + 1, 3) = numero_jour 'Numérotation

numero_jour = numero_jour + 1 'Le numéro est augmenté de 1 à chaque boucle

Wend

'idem mais pour la ligne heure

While numero_heure <= 23 'il y a toujours 24 cellules/heure DONC c'est fixe

Cells(1, numero_heure + 4) = numero_heure

numero_heure = numero_heure + 1

Wend

End Sub

-à partir de cette macro j'ai donc les entêtes de la matrice que je veux créer

Mon problème est le suivant:

-Je n'arrive pas à trouver un moyen de créer une matrice débutant à la cellule D2 et se finissant à la dernière cellule de la colonne AA en fonction de la dernière ligne de la colonne C (le nombre de jour varie selon le mois, qui est toujours inscrit dans la cellule A1).

Dans cette sélection (A2: AA?), je voudrais incrémenter une série de nombre de 0 à ? (la fin de ma matrice) en pas de 4 (4 est inscrit dans la cellule A2, et varie aussi, donc je voudrais déclarer cette cellule dans la macro).

Je m'explique, si le saut vaut 4 comme dans ma feuille feuill1, alors, D2 vaudra 0, E2 = 4, F=8 ... jusqu'à la dernière cellule AA2,.

PUIS que ce système revienne à la ligne, donc la cellule D3 vaudra (AA2+4) et ainsi de suite jusqu'à la fin de la matrice (qui je le rappelle est variable selon le nombre de jour).

Voila .... j'espère m'être bien exprimé (je suis novice)

En espérant avoir une réponse de votre part,

Bonne journée

8classeur1.xlsx (95.77 Ko)

Bonjour,

quelque chose comme ça ?:

Sub Incremente()
Dim i As Integer, j As Integer, Num As Integer
With Worksheets("Feuil1") ' à adapter
For i = 2 To .Range("C" & Rows.Count).End(xlUp).Row 'pour les lignes 2 à dernière ligne de colonne C
    For j = 4 To 27 'pour chaque colonne de D à AA
        .Cells(i, j) = Num
        Num = Num + 4
    Next
Next
End With
End Sub

Un code indenté et mis entre balise code est quand même plus lisible qu'une succession de lignes rouges !

A+

Bonsoir

Déjà merci bcp pour ta réponse et ton temps !

Je vais tester ce que tu as fait et je reviendrais vers toi après

Et oui effectivement, la prochaine fois j’utiliserais une balise pour le code,

sorry j'ai pas encore l'habitude des forums

Bonne soirée !

edit: MERCI bcp encore une fois, ton code marche parfaitement !

Rechercher des sujets similaires à "tableau variable dimensions"