OVH Cloud OVH Cloud

array

2 réponses
Avatar
boblebob
salut,
après quelques mois de non manipulation de VBA je me fais des petites
révisions et ça ne marche pas.
Ce que je veux, utiliser les "array" pour remplir des cellules, je tente
plusieurs méthodes : test1 marche mais pas test2, pourquoi ?


Sub test1()
'les zones nommées zon1 à zon3 prennent les valeurs du array
Range("zon1:zon3") = Array("aa", "bb", "cc")
End Sub

Sub test2()
'idem que test1 sans zone nommée
Dim val
val = Array("zz", "ee", "rr")
For i = 1 To 3
Cells(2, i).Value = val
Next i
End Sub


merci
--
A+

Bob
----

2 réponses

Avatar
Corona
Bonjour Bob,
L'indice d'une array commence à 0
Essaye ceci :
Sub test2()
'idem que test1 sans zone nommée
Dim val
val = Array("zz", "ee", "rr")
For i = 0 To 2
Cells(2, i + 1).Value = val(i)
Next i
End Sub
Philippe


"boblebob" a écrit dans le message de news:

salut,
après quelques mois de non manipulation de VBA je me fais des petites
révisions et ça ne marche pas.
Ce que je veux, utiliser les "array" pour remplir des cellules, je tente
plusieurs méthodes : test1 marche mais pas test2, pourquoi ?


Sub test1()
'les zones nommées zon1 à zon3 prennent les valeurs du array
Range("zon1:zon3") = Array("aa", "bb", "cc")
End Sub

Sub test2()
'idem que test1 sans zone nommée
Dim val
val = Array("zz", "ee", "rr")
For i = 1 To 3
Cells(2, i).Value = val
Next i
End Sub


merci
--
A+

Bob
----




Avatar
boblebob
merci

--
A+

Bob
----

"Corona" <Philippe Tulliez> a écrit dans le message de news:

Bonjour Bob,
L'indice d'une array commence à 0
Essaye ceci :
Sub test2()
'idem que test1 sans zone nommée
Dim val
val = Array("zz", "ee", "rr")
For i = 0 To 2
Cells(2, i + 1).Value = val(i)
Next i
End Sub
Philippe


"boblebob" a écrit dans le message de news:

salut,
après quelques mois de non manipulation de VBA je me fais des petites
révisions et ça ne marche pas.
Ce que je veux, utiliser les "array" pour remplir des cellules, je tente
plusieurs méthodes : test1 marche mais pas test2, pourquoi ?


Sub test1()
'les zones nommées zon1 à zon3 prennent les valeurs du array
Range("zon1:zon3") = Array("aa", "bb", "cc")
End Sub

Sub test2()
'idem que test1 sans zone nommée
Dim val
val = Array("zz", "ee", "rr")
For i = 1 To 3
Cells(2, i).Value = val
Next i
End Sub


merci
--
A+

Bob
----