Indice n'appartient pas à la sélection

Résolu
cs_nitho Messages postés 130 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 8 décembre 2015 - 7 juil. 2011 à 16:58
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 7 juil. 2011 à 17:21
Bonjour,

bon j'ai un problème,
quand je copie un range dans un tableau du genre

dim v() as string
v = range("A1:A6").value


Si la cellule A1 est vide, quand j’essaierais d'utiliser v(1) j'aurais une erreur 9 l'indice n'appartient pas à la sélection...
Or j'aime beaucoup copier les ranges dans des tableaux parce que dans la mémoire vive les opérations sont très rapides.
donc il me faudrait: soit détecter les mauvaises cases de mon tableau, ce que je ne sais pas faire, j'ai essayé de faire un isempty(v(1)) mais j'obtiens la même erreurs.
Soit il me faut pouvoir éviter les cellules vides dans mon range de départ. j'ai pensé à xltypeblanks mais je ne sais pas si on peut faire une soustraction d'ensemble en vba. Pour faire un truc du genre,

rangeinitial - rangeinitial.specialcells(xlcelltypeblanks)....




nitho l'amateur

3 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 juil. 2011 à 17:07
Bonjoutr

Dim v '===>> forcément Variant (non typé, donc)
v = Range("A1:A6").Value

'et ton tableau v est à 2 dimensions ===>>

Dim v
v = Range("A1:A6").Value

For i = 1 To UBound(v, 1)
  MsgBox v(i, 1)
Next



____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
3
cs_nitho Messages postés 130 Date d'inscription jeudi 16 avril 2009 Statut Membre Dernière intervention 8 décembre 2015
7 juil. 2011 à 17:11
Merci,

en fait je me suis fait prendre par le fait que je copie une colonne et je me retrouve avec un tableau à 2 DIMENSIONS....

Au fait les tableaux vba commence par l'indice 0 ou 1 finalement...???


nitho l'amateur
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 juil. 2011 à 17:21
Par l'indice 1 ===>> exactement comme pour les colonnes et lignes de ta feuille (dont ils sont une espèce de "reflet")

____________________
Utiliser le bouton "REPONSE ACCEPTEE" sur une réponse exacte facilite les recherches ultérieures d'autres forumeurs. PENSEZ-Y SVP
0
Rejoignez-nous