Probleme avec des variables public
Bonjour,
Je me présente :
-niveau vb Excel pas terrible
-Aime toutefois ronger des nonos pour fabriquer des petites applications.
Conteste : faire une macro qui lit des valeurs dans une feuille Excel et me ressort le Array que j'applique à un listbox.x (désolant de simplicité pourtant)
Le problème :
Une variable Public : Public dercol As Variant ou Public myarray() As Variant
Précision : variables déclarés dans un module .. tout en haut.
Quand je passe à travers des Sub XXX simples comme : Call testmavar ()
No problèmes les valeurs passent entre les macros.
Quand je passe à travers des Sub XXX à arguments comme : Sub Trie_table(nom_fic, col_trie, Ordre)
Et ben je perd tout !!
1) question : pourquoi
2) question : ais-je été clair ??
Merci en tout cas
Thierry
Ci joint la macro qui m'efface toutes mes publiques :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| Sub Transfert_data_listbox(nom_fic, del_col, ouiounon, ask1, ask2, ask3, myarray)
' Macro de transfert des tables initiales sans les "delete"
Call Trouver_derlin_dercol(nom_fic)
ReDim myarray(derlin, dercol)
j = 0
For I = 1 To derlin
Set cellulecourante = Worksheets(nom_fic).Cells(I, del_col)
del = cellulecourante.Value
If del = ouiounon Then
'lecture des données
Set cellulecourante = Worksheets(nom_fic).Cells(I, ask1)
matrice(I, 1) = cellulecourante.Value
Set cellulecourante = Worksheets(nom_fic).Cells(I, ask2)
matrice(I, 2) = cellulecourante.Value
Set cellulecourante = Worksheets(nom_fic).Cells(I, ask3)
matrice(I, 3) = cellulecourante.Value
myarray(j, 1) = matrice(I, 1)
myarray(j, 2) = matrice(I, 2)
myarray(j, 3) = matrice(I, 3)
j = j + 1
End If
Next I
End Sub |