[Excel] [VBA]

Fermé
Kostorm - 3 mars 2010 à 14:41
tompols Messages postés 1273 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 25 novembre 2013 - 8 mars 2010 à 17:14
Bonjour (ou rebonjour)

Je reviens déjà vous embettez pour un autre soucis de VBA Excel.
Il s'agit d'un recordset d'une requete.
Il est fait et fonctionne, c'est à dire que j'arrive à stocker ma requete dans mon recordset (en snapshot)

Mais ensuite je veux juste le coller dans une feuille excel mais je ne connait pas du tout la synthaxe à utiliser!

Et dans les forums en général, ils parlent de comment faire le recordset, mais je ne trouve pas juste comment le coller ensuite dans un excel!

Merci d'avance de votre aide!
A voir également:

5 réponses

m@rina Messages postés 21297 Date d'inscription mardi 12 juin 2007 Statut Contributeur Dernière intervention 25 janvier 2025 11 383
3 mars 2010 à 14:44
0
Merci de votre réponse rapide.
J'ai été voir, il propose CopyFromRecordset, cependant cet objet n'est pas reconnus dans mon excel.
Ils disent d'activer Microsoft ActivX Data 2.1 Library, chose que j'ai fait, mais il ne le me reconnais toujours pas.

Pas d'autres idées?

PS: j'ai la suite 2003
0
Bonsoir,

Je me permet de faire un petit UP pour demander si quelqu'un sait comment juste coller un recordset d'une requête. Même si c'est juste le nom de la commande.
J'ai essayer intuitivement un "paste" mais ça marche pas.

Merci d'avance!
0
Encore un UP
J'ai vraiment besoin d'aide sur la méthode des recordset!
J'ai appris en regardant par ci par là qu'il s'agit d'un objet que l'on ne peut pas coller tel quel, il faut le parcourir ligne par ligne, même le snapshot, et coller ensuite celllule par cellule si j'ai bien compris.

Quelqu'un aurait la synthaxe type?

Merci beaucoup d'avance!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tompols Messages postés 1273 Date d'inscription jeudi 29 juillet 2004 Statut Contributeur Dernière intervention 25 novembre 2013 435
8 mars 2010 à 17:14
Bonjour
plusieurs solutions :
- soit tu ajoute un objet QueryTable à ta feuille excel, exemple tiré de l'aide vba ci-dessous :
Dim qt As QueryTable
sqlstring = "select 96Sales.totals from 96Sales where profit < 5"
connstring = _
    "ODBC;DSN=96SalesData;UID=Rep21;PWD=NUyHwYQI;Database=96Sales"
With ActiveSheet.QueryTables.Add(Connection:=connstring, _
        Destination:=Range("B1"), Sql:=sqlstring)
    .Refresh
End With

- soit tu parcours ton recordset via la méthode MoveNext jusqu'à EOF avec un boucle par exemple "While not rs.EOF" et tu envoies les résultats dans la feuille excel...
J'ai pas de temps devant moi, ni d'exemple sous la main, je repasserai plus tard si tu ne t'en sors pas....
0