Passer un tableau de deux dimensions en paramètre d'une function
Résolu/Fermé
A voir également:
- Passer un tableau de deux dimensions en paramètre d'une function
- Tableau croisé dynamique - Guide
- Passer de windows 7 à windows 10 - Guide
- Tableau ascii - Guide
- Piratage facebook changer mot de passe - Guide
- Deux comptes whatsapp - Guide
1 réponse
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 741
Modifié par pijaku le 10/07/2014 à 11:57
Modifié par pijaku le 10/07/2014 à 11:57
Bonjour,
Regarde cet exemple bricolé rapidement :
Cordialement,
Franck
Regarde cet exemple bricolé rapidement :
Sub test() Dim Tb_in(3, 2) As Double, Tb_Out As Variant Dim i&, j& 'remplissage tableau initial For i = 1 To 3 For j = 1 To 2 Tb_in(i, j) = 1 Next j Next i 'envoi à la fonction le tableau en paramètre Tb_Out = MaFonction(Tb_in) 'retour du tableau dans un variant 'visualisation résultat : MsgBox "la valeur : " & Tb_in(3, 2) & " est devenue : " & Tb_Out(3, 2) End Sub Function MaFonction(Tbl() As Double) As Variant Dim i&, j&, Tb_Interm(3, 2) As Double For i = LBound(Tbl, 1) To UBound(Tbl, 1) For j = LBound(Tbl, 2) To UBound(Tbl, 2) 'ici on ne fait que multiplier par 2 les valeurs du tableau passé en paramètre Tb_Interm(i, j) = Tbl(i, j) * 2 Next j Next i MaFonction = Tb_Interm End Function
Cordialement,
Franck
10 juil. 2014 à 12:12
c'est un peu ambigu.
Par exemple si je veux faire une fonction qui calcule le produit scalaire de deux vecteurs stockés dans une table de deux dimension.
Ça serai quoi la première ligne si on veut parler en suite de mon_tableau(i,j) ?
Genre pour que ça signifie pas un tableau à une dimension.
10 juil. 2014 à 12:17
Non ce n'est pas ambigue... Dans mon exemple tu sais que tu va utiliser un tableau à deux dimensions. Mais cela peut être entièrement automatique en précisant les dimensions souhaitées en paramètre également...
La première ligne serait rigoureusement la même que la mienne. Je fait une multiplication, toi un produit scalaire....
Genre pour que ça signifie pas un tableau à une dimension.
On s'en fiche! C'est toi qui envoie le tableau à la fonction. Là tu lui envoie ce que tu veux...
Si tu veux que ta fonction ne fonctionne qu'avec un tableau à deux dimensions et, si tu lui envoie une seule dimension qu'elle te renvoie un message d'erreur, utilise le traitement d'erreur...
10 juil. 2014 à 12:32
si vous savez à quel point vous m'avez aidé.
Je vous souhaite tout le bonheur du Monde !