Curiosité du tableau de tableaux

Bon jour à tous

Il s'agit de mon 1er post sur ce forum, j'espère ne pas enfreindre de règles

Je suis sur un développement de macro de traitement de données. Ces données consistent en des demandes d'interventions de maintenance, et ce sur 6 zones. A un moment du code, j'ai construit un tableau de tableaux comme ci-dessous :

Public tnew() As Integer
Public tnewCO(), tnewBS(), tnewNO(), tnewSO(), tnewE(), tnewNIE() As Integer
ReDim tnewCO(tlwsmacro(1)) 
    ReDim tnewBS(tlwsmacro(2))
    ReDim tnewNO(tlwsmacro(3))
    ReDim tnewSO(tlwsmacro(4))
    ReDim tnewE(tlwsmacro(5))
    ReDim tnewNIE(tlwsmacro(6))
    tnew(1) = tnewCO
    tnew(2) = tnewBS
    tnew(3) = tnewNO
    tnew(4) = tnewSO
    tnew(5) = tnewE
    tnew(6) = tnewNIE

J'ai alors testé la variable que je venais de construire, en regardant par exemple si quand j'enregistrais une valeur dans tnewCO(1), elle s'inscrivait dans tnew(1)(1) et inversement.

Quelle n'a pas été ma surprise de constater que cela ne marchait pas !!

Je ne comprend pas pourquoi il n'y pas de lien entre les 2, je viens donc demander à quelqu'un féru de VBA ce qu'il se cache derrière ce constat ? Comment sont liés mes tableaux constitutifs et mon tableau de tableaux ??

Je remercie toute aide

Bonjour et bienvenu(e)

Sauf erreur ou omission

Pour accéder un 1 élément d'un tableau de tableaux il faut utiliser la syntaxe suivante

Nom_du_tableau_principal(Indice_du_tableau_principal) (Indice_du_tableau_secondaire)

Pour accéder au 3ème élément du 2ème tableau cela peut se traduire par

tnew(2) (3) =  "Coucou"
MgsBox tnew(2) (3)

Attention par défaut l'indice des tableaux va de 0 à .....

Pour que l'indice commence à 1 : Option Base 1

Je te remercie de ta réponse

En effet j'ai pu constater cela en faisant mes tests mais j'aurais pensé intuitivement que, lorsque je fais

"tnew(1)(1) = 10"

j'aurais aussi obtenu que

"tnewCO(1) = 10"

Rechercher des sujets similaires à "curiosite tableau tableaux"