Bonjour le forum,
je viens demander l'aide des pros car je n'arrive pas à réaliser ce que je souhaite.
Dans les codes que je développe, j'ai souvent besoin de redimensionner des tableaux à 2 dimensions (Rajout d'une ligne dans la 1ère dimension).
Excel ne permettant de redimensionner que la dernière dimension d'un tableau, j'utilise l'astuce d'ajouter une ligne dans la Dimension 1 du tableau en le transposant.
Du coup, pour ne pas répéter ce code à plusieurs reprises, je souhaite faire une fonction, mais je n'y arrive pas.
Voici mon code :
Public Function Ajout_1_ligne_dans_Tableau_2D() As Variant
Dim Tableau()
Tableau = Application.Transpose(Tableau)
ReDim Preserve Tableau(1 To UBound(Tableau, 1), 1 To UBound(Tableau, 2) + 1)
Tableau = Application.Transpose(Tableau)
Ajout_1_ligne_dans_Tableau_2D = Tableau
End Function
Sub pour tester la fonction :
Sub Test()
'Déclaration
Dim tab_exemple(10, 2)
'Enregistrement des valeurs dans le tableau
For i = 0 To 10
tab_exemple(i, 0) = Range("A" & i + 2)
tab_exemple(i, 1) = Range("B" & i + 2)
tab_exemple(i, 2) = Range("C" & i + 2)
Next
tab_exemple = Ajout_1_ligne_dans_Tableau_2D(tab_exemple)
End Sub
J'ai une erreur de compilation : "Impossible d'affecter à un tableau".
Quelqu'un voit-il l'erreur ?