Bonjour,
Le mot réservé [ Preserve ] permet de conserver les données déjà insérer
dans le tableau au moment du redimensionnement.
Tel que spécifié, Excel ne permet pas de redimmensionner un tableau
défini dans un type.
Il est possible par contre de dimensionner l'intérieur d'un type selon une
constante.
Exemple :
Option Explicit
' Création de tableau
Type Tableau
Ligne As Integer
Numero As Integer
End Type
Type Balance
Nombre(5) As Integer
End Type
Dim Bloc() As Balance
Dim Tab1() As Tableau
'
Sub Essai()
Dim J As Long, Message As String
For J = 1 To 2
ReDim Preserve Tab1(J)
Tab1(J - 1).Ligne = (50 * J)
Tab1(J - 1).Numero = (100 * J)
Next J
For J = 1 To 2
ReDim Preserve Bloc(J)
Bloc(J - 1).Nombre(0) = (10 * J)
Bloc(J - 1).Nombre(1) = (20 * J)
Bloc(J - 1).Nombre(2) = (30 * J)
Bloc(J - 1).Nombre(3) = (40 * J)
Bloc(J - 1).Nombre(4) = (50 * J)
Next J
Message = ""
For J = 1 To 2
Message = Message & Str(Bloc(J - 1).Nombre(0)) & vbLf
Message = Message & Str(Bloc(J - 1).Nombre(1)) & vbLf
Message = Message & Str(Bloc(J - 1).Nombre(2)) & vbLf
Message = Message & Str(Bloc(J - 1).Nombre(3)) & vbLf
Message = Message & Str(Bloc(J - 1).Nombre(4)) & vbLf
Next J
MsgBox Message
End Sub
'
Lupin