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 : Sélectionner tout - Visualiser dans une fenêtre à part
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
Partager