Sub test()
Dim tablo(5, 10), tblBase1
texte = "ligne 1 index = " & LBound(tablo) & vbCrLf & "colone 1 index = " & LBound(tablo, 2)
texte = texte & vbCrLf & " derniere ligne index = " & UBound(tablo) & vbCrLf & "derniere colonne index = " & UBound(tablo, 2)
MsgBox texte
tblBase1 = Base0ToBase1(tablo)
texte = "ligne 1 index = " & LBound(tblBase1) & vbCrLf & "colone 1 index = " & LBound(tblBase1, 2)
texte = texte & vbCrLf & " derniere ligne index = " & UBound(tblBase1) & vbCrLf & "derniere colonne index = " & UBound(tblBase1, 2)
MsgBox texte
End Sub
Function Base0ToBase1(tbl)
Base0ToBase1 = Application.Index(tbl, Evaluate("ROW(1:" & UBound(tbl) + 1 & ")"), Evaluate("column(" & Cells(1).Resize(, UBound(tbl, 2) + 1).EntireColumn.Address(0, 0) & ")"))
End Function