OVH Cloud OVH Cloud

Fonction renvoyant un tableau

2 réponses
Avatar
Misfit 28
Bonjour à tous,

Quelqu'un pourrait il me dire si une fonction peut renvoyer un tableau de
valoir et comment déclarer cette fonction ?
J'ai fait une fonction (qui marche) et qui me détermine une plage de
cellules qui englobe toutes les cellules non vides d'une feuille (elle
calcule la colonne située le + à gauche dont au moins une cellule est non
vide (respectivement le + à droite) et la première ligne dont au moins une
cellule est non vide (respectivement le + en bas). Je voudrais mettre dans un
tableau ces coordonnées et que ma fonction me renvoie ce tableau.

Est ce faisable ? ou est-ce que je dois déclarer un tableau public qui
serait rempli par ma fonction ?

Merci d'avance de vos réponses

2 réponses

Avatar
Jacques93
Bonjour Misfit 28,

Une des solutions est d'employer une variable de type Variant :

Private Sub CommandButton1_Click()
Dim tbl As Variant
Dim i As Integer

tbl = MaPlage()
For i = LBound(tbl) To UBound(tbl)
MsgBox tbl(i)
Next i
End Sub

Private Function MaPlage() As Variant
MaPlage = Array("A1", "B2", "C3", "D4")
End Function

Bonjour à tous,

Quelqu'un pourrait il me dire si une fonction peut renvoyer un tableau de
valoir et comment déclarer cette fonction ?
J'ai fait une fonction (qui marche) et qui me détermine une plage de
cellules qui englobe toutes les cellules non vides d'une feuille (elle
calcule la colonne située le + à gauche dont au moins une cellule est non
vide (respectivement le + à droite) et la première ligne dont au moins une
cellule est non vide (respectivement le + en bas). Je voudrais mettre dans un
tableau ces coordonnées et que ma fonction me renvoie ce tableau.

Est ce faisable ? ou est-ce que je dois déclarer un tableau public qui
serait rempli par ma fonction ?

Merci d'avance de vos réponses



--
Cordialement,

Jacques.

Avatar
Misfit 28
Bonjour Jacques 93,

Je viens de tester ta solution et ça marche impeccable.

Merci beaucoup.


Bonjour Misfit 28,

Une des solutions est d'employer une variable de type Variant :

Private Sub CommandButton1_Click()
Dim tbl As Variant
Dim i As Integer

tbl = MaPlage()
For i = LBound(tbl) To UBound(tbl)
MsgBox tbl(i)
Next i
End Sub

Private Function MaPlage() As Variant
MaPlage = Array("A1", "B2", "C3", "D4")
End Function

Bonjour à tous,

Quelqu'un pourrait il me dire si une fonction peut renvoyer un tableau de
valoir et comment déclarer cette fonction ?
J'ai fait une fonction (qui marche) et qui me détermine une plage de
cellules qui englobe toutes les cellules non vides d'une feuille (elle
calcule la colonne située le + à gauche dont au moins une cellule est non
vide (respectivement le + à droite) et la première ligne dont au moins une
cellule est non vide (respectivement le + en bas). Je voudrais mettre dans un
tableau ces coordonnées et que ma fonction me renvoie ce tableau.

Est ce faisable ? ou est-ce que je dois déclarer un tableau public qui
serait rempli par ma fonction ?

Merci d'avance de vos réponses



--
Cordialement,

Jacques.