Beug avec redim preserve
Résolu
quent
-
quent -
quent -
A voir également:
- Vba redim preserve
- Redim - Télécharger - Retouche d'image
- Excel compter cellule couleur sans vba - Guide
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
- Mkdir vba ✓ - Forum VB / VBA
5 réponses
Bonjour,
Vous utilisez ReDim Preserve pour pouvoir créer un tableau dynamique. Il faut savoir que seule la seconde dimension du tableau peux être incrémentée.
Par conséquent :
Remarque : Tu peux redimensionner et préserver ton tableau en une fois, si tu connais ces bornes à l'avance.
Ainsi :
Cordialement,
Franck
Vous utilisez ReDim Preserve pour pouvoir créer un tableau dynamique. Il faut savoir que seule la seconde dimension du tableau peux être incrémentée.
Par conséquent :
dim tableau() as Variant redim preserve tableau(1 to 2,1 to 2) redim preserve tableau(1 to 2,1 to 3)
Remarque : Tu peux redimensionner et préserver ton tableau en une fois, si tu connais ces bornes à l'avance.
Ainsi :
Dim tableau() As Variant
ReDim Preserve tableau(1 To 13, 1 To 5)
Cordialement,
Franck
Bonjour,
vous ne pouvez redimensionner que la derniere dimension:
vous ne pouvez redimensionner que la derniere dimension:
redim preserve tableau(1 to 2,1 to 2)
redim preserve tableau(1 to 2,1 to 3)
merci beaucoup, dans mon cas j'ai juste besoins d'inverser les dimensions mais imaginons que je veuille changer les deux dimension
par exemple :
dim tableau() as variante
redim preserve tableau (1 to 2,1 to 2)
redim preserve tableau (1 to 3,1 to 3)
comment devrai je faire ?
par exemple :
dim tableau() as variante
redim preserve tableau (1 to 2,1 to 2)
redim preserve tableau (1 to 3,1 to 3)
comment devrai je faire ?
Dans ce cas, la seule solution à ma connaissance est de passer par un tableau intermédiaire, d'effacer ton tableau et de le redimensionner.
Comme le montre cet exemple :
Comme le montre cet exemple :
Sub test() Dim tableau() As Variant, Temporaire() As Variant ReDim Preserve tableau(1 To 2, 1 To 3) For i = 1 To 2 For j = 1 To 3 tableau(i, j) = "Liste " & i & j Next j Next i ReDim Preserve Temporaire(1 To 2, 1 To 3) Temporaire = tableau Erase tableau ReDim Preserve tableau(1 To 3, 1 To 3) For i = 1 To 2 For j = 1 To 3 tableau(i, j) = Temporaire(i, j) Next j Next i Erase Temporaire tableau(3, 1) = "ajout1" tableau(3, 2) = "ajout2" tableau(3, 3) = "ajout3" Debug.Print tableau(1, 2) & " - " & tableau(2, 3) & "- " & tableau(3, 2) End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Peut être que tu n'as pas vu ma réponse : https://forums.commentcamarche.net/forum/affich-30657091-beug-avec-redim-preserve#6