[VBA] remplir un tableau ou un recodset sans boucle

bonjourc Messages postés 47 Date d'inscription mardi 19 mars 2013 Statut Membre Dernière intervention 23 mars 2013 - 24 juin 2010 à 15:18
bonjourc Messages postés 47 Date d'inscription mardi 19 mars 2013 Statut Membre Dernière intervention 23 mars 2013 - 8 juil. 2010 à 11:02
Bonjour

J'ai une plage Excel que je voudrais rentrer dans un tableau/structure/recordset.
La plage fait 20 colonnes sur 20 000 lignes.

Question
Comment remplir une variable qqconque sans faire de "for i = 0 to .... next"

Je vais commencer à programmer ma boucle, mais toute réponse sera la bienvenue.



Le vrai voyage, c'est d'y aller. Une fois arrivé, le voyage est fini. Aujourd'hui les gens commencent par la fin.

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 juin 2010 à 15:58
Salut
Tu peux déclarer tes données comme une base de données.
Il te suffira ensuite d'interroger cette base de données en SQL, comme tu le ferais avec une base Access, SQL Server ou autre mySql.
--> ADODB = moteur de connexion et d'interrogation
Tu pourras ainsi remplir un RecordSet avec toutes les données ou bien seulement celles que tu auras filtrées dans ta requète SQL.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
bonjourc Messages postés 47 Date d'inscription mardi 19 mars 2013 Statut Membre Dernière intervention 23 mars 2013
25 juin 2010 à 16:35
Merci bcp pour ta réponse.
C'est ce que je pensais faire, mais est ce que je peux déclarer une plage, ou un onglet comme une bdd?
Je veux dire, je dois gérer les données, mais l'impératif est que les données et le résultat soit sur le même classeur excel (je dois travailler sur un fichier, sans "trop" y toucher), et je ne sais pas comment faire "croire" au recordset que cette plage est une bdd.

Le vrai voyage, c'est d'y aller. Une fois arrivé, le voyage est fini. Aujourd'hui les gens commencent par la fin.
0
bonjourc Messages postés 47 Date d'inscription mardi 19 mars 2013 Statut Membre Dernière intervention 23 mars 2013
8 juil. 2010 à 11:02
RE Bonjour

Je me permets un petit up. D'une part, je ne sais pas trop me servir de la connexion ADODB, mais en plus, la plage à interroger n'a rien d'une base de données, en effet, Ce n'est pas un onglet qui contient les données, mais bien une plage au milieu de celle-ci. Est-ce que la méthode ac le ADODB pourrait tt de ^m marcher?

Visuellement,
Bonjourc.


Le vrai voyage, c'est d'y aller. Une fois arrivé, le voyage est fini. Aujourd'hui les gens commencent par la fin.
0
Rejoignez-nous