Bonjour,
J'ai un petit souci sur une fonction.
J'ai un tableau qui n'a pas été déclaré mais a été créé par une fonction (appelons cette fonction Fonction_1 pour clarifier).
Dans la Fonction_1, j'ai d'abord déclaré un tableau comme ça:
dim LeTableau (0 To 1000, 0 To 1000) As Variant
Puis à la fin de la fonction j'ai fait Donc dans une procédure j'ai créé un tableau, appelons le "Tableau_dans_Procédure", sans le déclarer, juste en faisant appel à la fonction:
Tableau_dans_Procédure=Fonction_1(...arguments...)
ça marche puisque par exemple, lorsque je fais (dans la procédure qui a appelé la fonction):
msgbox(ubound(Tableau_dans_Procédure))
--> J'obtiens bien "1000" en message
Par contre j'ai besoin d'entrer ce tableau ("Tableau_dans_Procédure") en argument dans une deuxième fonction, appelons la "Fonction_2", et c'est là ou est le problème.
Dans Fonction_2, j'ai déclaré le tableau-argument en dernier argument avec ParamArray:
Public Function Fonction_2(...arguments..., ParamArray Tableau_Dans_Fonction_2() As Variant
Or quand dans la procédure principale je fais:
Blabla=Fonction_2(...arguments..., Tableau_Dans_Procédure)
et bien dans la fonction_2 rien ne marche et il y avait plein d'erreurs qui m'ont fait pensé que le tableau en paramètre de fonction_2 était vide (alors que ça devait être le tableau créé par Fonction_1). Je l'ai vérifié en faisant à l'intérieur du code de la Fonction_2:
MsgBox(ubound(Tableau_dans_Fonction_2))
et le message donne 0 (alors que c'était bien 1000 quand je faisais ce message dans la procédure).
Je ne sais pas à quel niveau se produit l'erreur, mais visiblement il y a un problème avec un souci.
Avez vous une idée?
Merci d'avance
(édit: désolée mais je n'arrive pas à sauter les lignes après les balises de code)
Partager