Erreur d'exécution 9....VBA-Excel (tableau) [Résolu]

Begin_09 5 Messages postés mardi 5 juin 2007Date d'inscription 18 septembre 2007 Dernière intervention - 22 juin 2007 à 11:19 - Dernière réponse : cs_etniqs 201 Messages postés mardi 7 octobre 2003Date d'inscription 10 mai 2016 Dernière intervention
- 22 juin 2007 à 15:11
Bonjour,

J'ai un problème avec l'utilisation des tableaux sous VBA (Excel 2003). Lorsque je veux lire mon tableau, j'ai toujours l'erreur 9, "l'indice n'appartient pas à la sélection". Je vous mets le petit morceau de code qui me cause ces soucis :

Sub Bouton1_QuandClic()
    Dim matable() As Variant
    Workbooks.Open "c:\a_lire.xls"
    matable = Range("a22:l22")
    ActiveWorkbook.Close
    For i = 1 To 5
        toto = matable(i).Value
        MsgBox "resultat :" & toto
    Next i
End Sub

D'avance je vous remercie si quelqu'un pourrait m'indiquer ma misérable erreur...
Afficher la suite 

3 réponses

Répondre au sujet
jrivet 7401 Messages postés mercredi 23 avril 2003Date d'inscription 6 avril 2012 Dernière intervention - 22 juin 2007 à 11:32
+3
Utile
Salut,
Parce que matable devient un tableau à deux dimension.

Que cherches tu à faire exactement? si tu souhaite mémoriser dans une varianle le contenu de la plage A22:L22 pourquoi ne pas l'assigner à une variable Range tout simplement?

Sinon essaie
Dim matable As Variant
   matable = Range("a22:l22")
   For i = 1 To 5
       toto = matable(1, i)
       MsgBox "resultat :" & toto
   Next i, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de jrivet
Begin_09 5 Messages postés mardi 5 juin 2007Date d'inscription 18 septembre 2007 Dernière intervention - 22 juin 2007 à 12:50
+3
Utile
Re,

Merci pour la réponse. Effectivement, j'avais oublié qu'il fallait préciser le numéro de ligne dans le tableau (1, dans l'exemple). Ta proposition d'assigner le contenu de la plage à une variable c'est pas ce que j'ai fait ?
 
matable = range ("a22:L22")

La boucle étant pour contrôler uniquement...
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Begin_09
cs_etniqs 201 Messages postés mardi 7 octobre 2003Date d'inscription 10 mai 2016 Dernière intervention - 22 juin 2007 à 15:11
+3
Utile
si, c'est ce que tu as fait, le problème est la lecture du tableau :

matable(1, i) et non
matable(i), puisque deux dimensions

coïto ergo sum
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_etniqs

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.