Bonjour à tous,
J'aimerais avoir un avis de votre part et une piste de solution car je bloque sur un problème.
Je possède 4 sub.
2 d'entre elles permettent de créer des tableaux de 2 dimensions et les 2 autres font des calculs à partir de ces tableaux.
Cela signifie qu'après avoir effectué les 2 premières sub, je dois conserver les tableaux crées afin de pouvoir les utiliser ensuite.
J'ai tenté un "Public tableau as variant" en début de module, puis j'utilise un Redim tableau dans la sub mais cela ne fonctionne pas : je perds mes données.
J'ai donc passé mes tableaux en arguments de sub de la façon suivante:
Sub essai 1 ()
code pour créer le tableau1
essai 2 (tableau1)
End Sub
Sub essai2 (tab1 as variant)
code pour créer le tableau2
essai3 (tableau1, tableau2)
End Sub
Cela fonctionne pour essai1 et essai2 mais dès que je veux lancer essai3, il me met le message suivant : "Type d'argument ByRef incompatible" en surlignant tableau2(i,5) ci-dessous. Ce message apparait avant "initialisation" de essai3. Voici comme cette sub est structurée :
sub essai3 (tab1 as variant, tab2 as variant)
for i = 0 to 20
tableau3(i,1) = fonction_calculs(argument1, tableau2(i,5))
next i
End sub
Est-ce que quelqu'un aurait une idée ?
Pourquoi si je déclare les tableaux en début de module (public) cela ne fonctionnement pas ?
Merci par avance.
Aurel
J'aimerais avoir un avis de votre part et une piste de solution car je bloque sur un problème.
Je possède 4 sub.
2 d'entre elles permettent de créer des tableaux de 2 dimensions et les 2 autres font des calculs à partir de ces tableaux.
Cela signifie qu'après avoir effectué les 2 premières sub, je dois conserver les tableaux crées afin de pouvoir les utiliser ensuite.
J'ai tenté un "Public tableau as variant" en début de module, puis j'utilise un Redim tableau dans la sub mais cela ne fonctionne pas : je perds mes données.
J'ai donc passé mes tableaux en arguments de sub de la façon suivante:
Sub essai 1 ()
code pour créer le tableau1
essai 2 (tableau1)
End Sub
Sub essai2 (tab1 as variant)
code pour créer le tableau2
essai3 (tableau1, tableau2)
End Sub
Cela fonctionne pour essai1 et essai2 mais dès que je veux lancer essai3, il me met le message suivant : "Type d'argument ByRef incompatible" en surlignant tableau2(i,5) ci-dessous. Ce message apparait avant "initialisation" de essai3. Voici comme cette sub est structurée :
sub essai3 (tab1 as variant, tab2 as variant)
for i = 0 to 20
tableau3(i,1) = fonction_calculs(argument1, tableau2(i,5))
next i
End sub
Est-ce que quelqu'un aurait une idée ?
Pourquoi si je déclare les tableaux en début de module (public) cela ne fonctionnement pas ?
Merci par avance.
Aurel