[Déplacé .Net --> VBA] Créer une table à partir d'une plage excel

lebcel Messages postés 13 Date d'inscription jeudi 24 avril 2003 Statut Membre Dernière intervention 16 août 2010 - 4 mai 2010 à 22:41
rv83toulon Messages postés 68 Date d'inscription mercredi 2 mars 2011 Statut Membre Dernière intervention 25 avril 2013 - 5 mai 2010 à 09:29
Bonjour,

J'aimerais connaitre le code VBA pour créer une table à partir d'une plage de données Excel:
- J'ai un tableau Excel
- J'aimerais créer une table qui contient les données de cette plage
- Sur cette table j'aimerais ajouter des colonnes

En passant par un recordset, je ne vois pas comment je peux rajouter une colonne. Voici le début de mon code :

Set db = DAO.OpenDatabase(chemin, False, False, "Excel 8.0;HDR=YES;")
Source = "SELECT *,1 as nbalea FROM [Calcul$A20:EL60000]"
Set rs = db.OpenRecordset(Source, dbOpenDynaset)
db.Execute "UPDATE NomDeTable??? SET nbalea=" & rnd &"", dbSQLPassThrough

Si vous avez des idées elles sont les bienvenues!
Lebcel

3 réponses

rv83toulon Messages postés 68 Date d'inscription mercredi 2 mars 2011 Statut Membre Dernière intervention 25 avril 2013
5 mai 2010 à 08:01
Bonjour,
Avant tout il serait bien de savoir ou tu veux créer ta table.
ACCESS? MYSQL? etc... il y a en bien d'autre.

La méthode DAO peux-être approprié il y en a d'autre aussi.

En attendant d'en savoir un peu plus pour créer une table fait une recherche sur "CREATE TABLE" en SQL.

Tu veux créer ta table à partir d'une plage excel, ok, mais elle est sur quel Feuille, et quel est la plage ?

@+
lebcel Messages postés 13 Date d'inscription jeudi 24 avril 2003 Statut Membre Dernière intervention 16 août 2010
5 mai 2010 à 09:03
Je voudrais créer ma table sous VBA dans excel. En gros, je voudrais que ma plage de données [Calcul$A20:EL60000] soit une table afin de pouvoir ajouter des colonnes, faire des filtres etc...

Je souhaite créer ma table à partir de [Calcul$A20:EL60000].

J'ai essayé d'intégrer un "create table NomTable as SELECT *,1 as nbalea FROM [Calcul$A20:EL60000]" mais ça ne marche pas.

Merci pour l'aide

Lebcel
rv83toulon Messages postés 68 Date d'inscription mercredi 2 mars 2011 Statut Membre Dernière intervention 25 avril 2013
5 mai 2010 à 09:29
Bonjour,
Ne pas oublier qu'Excel à des limites et reste un TABLEUR et non pas une BASE DE DONNEE.
Je ne pense pas que tu puisse faire de la création de table dans Excel.

Perso j'aurais simplement copié le tableau existant dans une autre feuille et j'aurais rajouté les colonnes supplémentaires dont j'aurais besoins. Avec Excel 2007 tu peux ensuite nommé ton tableau et y appliquer des filtres simplement etc...

pour le code l'enregistreur de macro peux te donné les pistes pour démarrer.
désolé de ne pouvoir t'aider mieux.

@+
Rejoignez-nous