[RESOLU] Compréhension variable tableau

Orodreth

XLDnaute Impliqué
Bonjour,

Toujours sur mes correctifs de code, j'ai sous les yeux un code que je comprends dans l'ensemble, sauf une petite partie que je n'arrive pas à saisir.

Il s'agit d'un adressage dans un tableau VBA.

Voici le code en question:

Code:
1 -    'On fait la boucle pour récupérer les données de la feuille "Prog."
2 -    While Sheets("Prog.").Cells(Ligne, 2) <> ""
3 -        ligne_max = ligne_max + 1
4 -        Ligne = Ligne + 1
5 -    Wend
6 -    
7 -    For Ligne = 5 To ligne_max - 1
8 -		For Col = 2 To 200
9 -			tb_prog(i, j) = Sheets("Prog.").Cells(Ligne, Col)
10 -			j = j + 1
11 -		Next
12 -        j = 0
13 -        i = i + 1
14 -    Next
15 -
16 -        ' récupère le numéro de semaine actuel lors de la génération du programme site
17 -        ' pour commencer S+1 il faut prendre S actuelle + 3 ce qui est fait plus bas
18 -        Sheets("Prog Site R").Select
19 -        num_semaine = Sheets("Prog Site R").Cells(1, 26).Value
20 -        col_S1 = num_semaine + 3
21 -        col_S2 = num_semaine + 4
22 -        col_S3 = num_semaine + 5
23 -        col_S4 = num_semaine + 6

Donc, à priori, de ce que j'ai compris de ce code, le tableau est renseigné en travaillant ligne par ligne (à partir de 5), et pour chaque ligne, colonne par colonne, à partir de la colonne 2.
A noter:
- L'indice de base du tableau est 0 (du moins pour la deuxième dimension ...)
- Les colonnes 2 à 4 sont des libellés, le reste des colonnes étant une gestion de planning.

Par contre, dans le code ci-dessus, j'ai du mal à comprendre les lignes 20 à 23.
J'ai beau retourné la question dans tous les sens, je vois pas comment les variables col_S1/col_S2/col_S3/col_S4/ peuvent référencer les bonnes semaines dans le tableau.
Surtout si on considère que l'index 0 du tableau correspond à la deuxième colonne d'Excel ...

Je joins un fichier épuré pour montrer la structure des feuilles excel.

Merci d'avance à ceux/celles qui me liront, et plus encore à ceux/celles qui me répondront.

Cordialement,
Orodreth
 

Pièces jointes

  • Prog vers Site R.xls
    266 KB · Affichages: 29
  • Prog vers Site R.xls
    266 KB · Affichages: 29
  • Prog vers Site R.xls
    266 KB · Affichages: 28
Dernière édition:

Pierrot93

XLDnaute Barbatruc
Re : Compréhension variable tableau

Bonjour,

pas tout compris moi... de plus dans ton fichier pas de code.... difficile de voir comme ca avec un tout petit bout de code sortie d'une procédure et de son contexte...

bonne journée
@+

Edition : bonjour PierreJean:)
 
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : Compréhension variable tableau

Bonjour Orodreth

Pour moi Col_S1 Col_S2 ... ne font aucunement référence au tb_prog1 mais a la cellule Z1 de la feuille Prog Site R
Quant au tableau il pourrait être défini plus simplement:

tb_prog1=Sheets("Prog.").range("B5:GR" & Sheets("Prog.").range("B"& rows.count).end(xlup).row)

Edit : Salut Pierrot toujours agréable de te croiser
 

Orodreth

XLDnaute Impliqué
Re : Compréhension variable tableau

Bonjour Pierrot, PierreJean, le forum

Je reposte mon fichier, plus complet, avec la macro complète. Pour ce qui est des données dans le tableau par contre ... confidentiel entreprise :(

En fait, la variable tableau me référence un client (Feuille Prog, colonne B), une série d'engins (Feuille Prog, colonne C), un numéro d'engin (colonne D). A partir de la colonne E, ce sont des numéros de semaines (de 1 à 52 par année).
Ce sont ces numéros de semaines qui me gênent dans le bout de code que j'ai posté.
Je n'arrive pas à comprendre comment le tableau VBA récupère les bonnes valeurs.

Les variables col_S1, col_S2, col_S3, col_S4 servent d'adressage dans le tableau VBA. Sinon oui, ils sont basés sur la valeur de la cellule Z1 de la feuille Prog Site R.

Cordialement,
Orodreth
 

Pièces jointes

  • Prog vers Site R.xls
    282.5 KB · Affichages: 34
  • Prog vers Site R.xls
    282.5 KB · Affichages: 39
  • Prog vers Site R.xls
    282.5 KB · Affichages: 38

Orodreth

XLDnaute Impliqué
Re : Compréhension variable tableau

Rebonjour,

Bon, ben j'ai trouvé.

J'ai monté un tableau de correspondance pour les index, et col_S1 correspond bien à S+3.

Pour info, si quelqu'un veut s'amuser à vérifier, en pièce jointe le classeur qui m'a servi à vérifier les correspondances.

Il suffit de modifier la cellule B1.
Le +3 correspond à la semaine suivante, par rapport à son Index dans le tableau VBA.

Merci à vous.

Cordialement,
 

Pièces jointes

  • Correspondance Semaine.xls
    20.5 KB · Affichages: 25
Dernière édition:

pierrejean

XLDnaute Barbatruc
Re : [RESOLU] Compréhension variable tableau

Re

pour ce que je comprends

c'est cette ligne qui utilise l'info Col_S1 dans le tableau et permet d'avoir les visites

visite = Split(tb_prog(i, col_S1), "&")

Edit : Avais pas vu dernier message : je regarde
 

Discussions similaires

Réponses
0
Affichages
148
Réponses
11
Affichages
286

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 196
Messages
2 086 100
Membres
103 116
dernier inscrit
kutobi87