Sub Mon_Tableau_2()
Dim MonTableau() As Variant
Dim Inc As Long
Erase MonTableau
'Copier le tableau structuré dans un tableau VBA en l'inversant
MonTableau = Application.Transpose(Range("T_Tableau"))
'Changer une valeur dans le monTableau
MonTableau(2, 2) = "ARTICLE10" 'ARTICLE01 --> ARTICLE10
' Quelle taille à mon tableau
Inc = UBound(MonTableau, 2)
' Ajouter un indice
Inc = Inc + 1 ' Ajouter une colonne
' Preserve ne sait le faire que sur la dernière dimension
ReDim Preserve MonTableau(1 To 3, 1 To Inc)
' Inscrire les valeurs dans MonTableau
MonTableau(1, Inc) = Inc
MonTableau(2, Inc) = "ART" & Format(Inc, "00")
MonTableau(3, Inc) = 10
Inc = Inc + 1 ' Ajouter une colonne
ReDim Preserve MonTableau(1 To 3, 1 To Inc)
MonTableau(1, Inc) = Inc
MonTableau(2, Inc) = "ART" & Format(Inc, "00")
MonTableau(3, Inc) = 10
'On redimmensionne le tableau Structuré et l'on y colle le Tableau en l'inversant
Range("T_Tableau").Resize(UBound(MonTableau, 2), UBound(MonTableau, 1)) = Application.Transpose(MonTableau)
End Sub