begin process at 2012 02 14 14:39:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Bases de données

 > 

exporter le résultat d'une requête vers un fichier access


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

exporter le résultat d'une requête vers un fichier access

mardi 2 novembre 2004 à 16:22:33 | exporter le résultat d'une requête vers un fichier access

jujunio

Bonjour à tous ,

Voilà mon problème, j'effectue une requête SQL sur une BD et je souhaiterai exporter le résultat de la requête (environ 1000 lignes) dans une nouvelle base de données (1 seule table avec 4 champs)

Merci d'avance pour votre aide très précieuse !


Jujunio
mardi 2 novembre 2004 à 16:41:39 | Re : exporter le résultat d'une requête vers un fichier access

alias666

Ca marche pas si tu fais:
- tu lances ta nouvelle base tu fais "fichier/données externes/importer"
- tu sélectionnes ta requête et ensuite importer.

_______________________
4L!@$ >>>>
mardi 2 novembre 2004 à 17:22:02 | Re : exporter le résultat d'une requête vers un fichier access

jujunio

Je préfère que ça soit automatique dans une fonction VB. Tu n'as pas une idée ??

Jujunio
mardi 2 novembre 2004 à 21:08:37 | Re : exporter le résultat d'une requête vers un fichier access

cboulas

Membre Club
Bhà ce que tu peux faire c'est un truc de ce genre

[code]
open "toto.txt" for output as #1 'ouverture du fichier
do until rs.eof 'Boucle jusqu'à la fin du recordset
print #1, rs.fields("LLLLLL") 'Inscription des infos contenue dans la colonne LLLLLL
loop
close #1 'Fermeture du fichier

Chris...
Web : Firstruner - eMail : Support
mardi 2 novembre 2004 à 21:28:17 | Re : exporter le résultat d'une requête vers un fichier access

CanisLupus

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !
Salut, avec sql c simple, un tit exemple en DAO mais en ADO on peut faire la même chose :

Set db = OpenDatabase("c:\temp\bd1.mdb")
db.Execute "SELECT * INTO table2 IN 'c:\temp\bd2.mdb' From table1"

"c:\temp\bd1.mdb" c'est ta base de départ
table2 c le nom de la table que tu veux créer dans la base d'arrivée.
'c:\temp\bd2.mdb' c'est la base d'arrivée
table1 c'est la table dans la base d'origine

le * ça peut être : champ1, champ2, ....

et, à la place de table1, ça pourrait être table1, table2, ...

En fait, pour être plus clair, tu construis ta requête et tu insères INTO TaTableDeReception IN 'TaBaseDeRecption'entre le select * et le from.

Si je ne suis pas assez clair, n'hésite pas, demande des précisions.

Cordialement, CanisLupus
mercredi 3 novembre 2004 à 09:18:20 | Re : exporter le résultat d'une requête vers un fichier access

jujunio

Salut CanisLupus


Merci pour ton aide.
Je t'ai très bien compris, je vais faire l'essai et je te tiens au courant

Merci
Jujunio
jeudi 4 novembre 2004 à 10:31:29 | Re : exporter le résultat d'une requête vers un fichier access

jujunio

Salut, j'ai fais l'essai mais j'ai deux erreurs au moment de la requête :

1°)La méthode Refresh échoue mais le résultat est bien récupéré dans la nouvelle table

2°)Quand je fais la requête à nouveau, un message m'indique que la table existe déjà !

3°)Si je change le nom de ma table de récéption, un message m'indique que "Cette opération n'est pas autorisé si l'objet est fermé mais la table est quand même récupérée !

Alors je suis un peu perdu !!!

Voila ma requête :
-----------------------
Adodc2.RecordSource = "SELECT Cli.Cli, Cli.Int_Loc, tie.tel, tie.gsm INTO maTable2 In 'c:\temp\bd2.mdb' From Tie inner join Cli on tie.tie=cli.tie WHERE Tie.Tie=Cli.Tie And Tie.Gsm Is Not Null And Cli.Ste='T'"

Call Adodc2.Refresh

-----------------------




Jujunio
jeudi 4 novembre 2004 à 20:22:16 | Re : exporter le résultat d'une requête vers un fichier access

CanisLupus

Membre Club Administrateur CodeS-SourceS
Ok, je ne savais pas que tu utilisais un DataControl. Personnellement je n'en utilise pas. Sinon pour tes 3 points :

1°) Cette requete ne remonte rien ni dans un recordset ni dans un datacontrol, donc refresh ne fonctionne pas. La requete que je t'ai donné ne travaille que dans la base, comme "delete from ..." par exemple.

2°) Une requete select .... into ... crée une table donc si cette table existe, il y a erreur. Dans ce cas, il faut détruire la table de réception avant. Voilà ce que j'utilise en DAO :


Dim db As Database
Dim tbl As TableDef

' Ouverture de la base de réception
Set db = OpenDatabase("c:\temp\bd2.mdb")
' Recherche de la table de réception
For Each tbl In db.TableDefs
' si elle existe, on la détruit
If LCase(tbl.Name) = "table2" Then
db.TableDefs.Delete tbl.Name
Exit For
End If
Next

' ouverture de la base de départ
Set db = OpenDatabase("c:\temp\bd1.mdb")
' exécution de la requete de transfert
db.Execute "SELECT * INTO table2 IN 'c:\temp\bd2.mdb' From table1"


3°) Si tu supprimes la table avant, tu n'auras plus ce message.

Maintenant, est-ce que tout ça peut être utilisé avec un DataControl ? je ne sais pas. Faut tester.

J'espère que j'ai pu t'être utile.

Bonne prog.

Cordialement, CanisLupus
vendredi 5 novembre 2004 à 11:42:17 | Re : exporter le résultat d'une requête vers un fichier access

jujunio

Salut finalement j'ai utilisé le modèle objet ADODB.



Dim cnn As New ADODB.Connection

' Connexion à la base de donnée
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Mes Documents\MyDataBase.mdb"

' Suppression de la table "Table1"
cnn.Execute "DROP TABLE Table1"

cnn.Close
Set cnn = Nothing



Puis j'ouvre ma base de départ et j'effectue ma requête ! Là ça fonctionne très bien.

ps : comment je peux tester si la table existe ounon dans la base ?

Merci.

Jujunio
vendredi 5 novembre 2004 à 15:25:47 | Re : exporter le résultat d'une requête vers un fichier access

CanisLupus

Membre Club Administrateur CodeS-SourceS
En ADO, j'ai testé ça :

'Référence : Microsoft ADO Ext. 2.8 for DDL and Security
Dim cnx As New ADODB.Connection
Dim mycat As New ADOX.Catalog
Dim tbl As New ADOX.Table

cnx.Provider = "Microsoft.Jet.Oledb.4.0"
cnx.ConnectionString = "C:\temp\bd1.mdb"
cnx.Open

mycat.ActiveConnection = cnx

' Recherche si la table existe
For Each tbl In mycat.Tables
If LCase(tbl.Name) = "table1" Then
mycat.Tables.Delete "table1"
Exit For
End If
Next

Bonne prog

Cordialement, CanisLupus

1 2

Cette discussion est classée dans : fichier, access, résultat, exporter, requête


Répondre à ce message

Sujets en rapport avec ce message

Transfert d'une requête ACCESS dans une feuille Excel [ par Molenn ] Bonjour, J'ai donc un petit soucis lors de ce transfert de fichier, à partir d'ACCESS. Je sais le faire à partir d'Excel, mais cette solution ne me [Access] récupérer le résultat d'une requête [ par leroi1024 ] Bonjour. J'ai déjà posté plusieurs messages et on m'a répondu à chaques fois donc me revoilà . Cette fois, je voudrais récupérer par programmetion le résultat d'une requete Access dans un fichier txt [ par lulusky ] comment lire ligne par ligne le résultat d'une requete access pour pouvoir écrire plusieurs lignes dans un fichier txtlulusky Problème avec un résultat de requête vide [ par pianoman94380 ] Bonjour à tous,Je développe un peu en vba sous access.Lorsque j'obtiens le résultat d'une requête, il est possible que celui soit nul.Cependant, je so Lire fichier texte et l'exporter vers Access [ par rytta87 ] Salut, je voudrais lire un fichier texte ligne par ligne avec un delimiteur de "," et l'exporter vers une table dans une base de donnees Access. J'ai Exporter le résultat d'une requete access dans un fichier excel [ par benibety ] Salut à tous!je suis en train de réaliser un formulaire permettant d'exécuter une requete access en mettant le résultat dans un fichier excel. Le prin exporter des enregistrements vers fichier words prédéfinis [ par snakers07 ] bonjour, je souhaiterai avoir quelques informations, voilà je suis sous access et j'aimerai créer par exemple une facture ou autre en bref un document exporter requete access vers excel [ par nanina2 ] Bonjour Je suis en stage, et je bosse sur une base de données sous Access . Je voudrais exporter, depuis un module, le résultat d'une requête vers E Lancer une requête ACCESS (2003) à partir d'un fichier Word [ par Colquico7duSoir ] Bonsoir à tous, Question probablement basique: comment fait-on pour lancer avec VBA 6.3, une requête déja existant dans une base de données Access 20


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,669 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales