[Oracle et VBA Excel] Requête sur table
Fermé
jacques13
Messages postés
14
Date d'inscription
vendredi 8 décembre 2006
Statut
Membre
Dernière intervention
17 décembre 2006
-
14 déc. 2006 à 15:41
nico410 - 8 mars 2012 à 08:57
nico410 - 8 mars 2012 à 08:57
A voir également:
- [Oracle et VBA Excel] Requête sur table
- Table ascii - Guide
- Si et excel - Guide
- Table des matières word - Guide
- Word et excel gratuit - Guide
- Liste déroulante excel - Guide
14 réponses
camet
Messages postés
4
Date d'inscription
samedi 10 janvier 2004
Statut
Membre
Dernière intervention
8 février 2008
7
8 févr. 2008 à 18:40
8 févr. 2008 à 18:40
Bonjour pourriez vous m'envoyer votre fichier excel.
Je suis tres interesse.
Merci bcp.
Je suis tres interesse.
Merci bcp.
Bonjour à vous,
Je n'ai malheureusement pas la solution à t'apporter, au contraire nous avons quelques problèmes communs.
En effet je souhaite transfèrer des données d'un tableau Excel dans une table Oracle. Pour cela j'utilise un boutton qui récupère les données en question et les envoie sur la base de donnée via une requête sql. Afin d'éviter les doublons si l'utilisateur appuie plusieurs fois sur le bouton, avancer les requêtes d'insertion, je supprime de la base toutes les données relative à mon tableau.
Il y a bien "DoCmd.RunSQL Ma_Requête" pour les requêtes mais je ne crois pas qu'il fonctionne avec Oracle. Et si je ne peux pas l'affirmer c'est avant tout car je ne vois pas comment me connecter.
Je suis donc interessé si quelqu'un pouvais répondre à ces deux points :
1-Me connecter à une base Oracle
2-Exécuter une requête SQL (qui serait codée dans la macro) sur une table
Je n'ai malheureusement pas la solution à t'apporter, au contraire nous avons quelques problèmes communs.
En effet je souhaite transfèrer des données d'un tableau Excel dans une table Oracle. Pour cela j'utilise un boutton qui récupère les données en question et les envoie sur la base de donnée via une requête sql. Afin d'éviter les doublons si l'utilisateur appuie plusieurs fois sur le bouton, avancer les requêtes d'insertion, je supprime de la base toutes les données relative à mon tableau.
Il y a bien "DoCmd.RunSQL Ma_Requête" pour les requêtes mais je ne crois pas qu'il fonctionne avec Oracle. Et si je ne peux pas l'affirmer c'est avant tout car je ne vois pas comment me connecter.
Je suis donc interessé si quelqu'un pouvais répondre à ces deux points :
1-Me connecter à une base Oracle
2-Exécuter une requête SQL (qui serait codée dans la macro) sur une table
toolon
Messages postés
1
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
18 décembre 2008
2
18 déc. 2008 à 11:52
18 déc. 2008 à 11:52
Bonjour,
cela fait un petit moment que ce topic a été posté, mais cela m'intéresse grandement.
Cbelliss, si tu es encore dans le coin (ou quelqu'un ayant eu vent de ça méthode), pourrais tu m'éclairer sur ton fichier Excel?
Merci.
cela fait un petit moment que ce topic a été posté, mais cela m'intéresse grandement.
Cbelliss, si tu es encore dans le coin (ou quelqu'un ayant eu vent de ça méthode), pourrais tu m'éclairer sur ton fichier Excel?
Merci.
Bonjour
je suis débutant et je voudrais importer des données d'une base oracle vers excel
et je suis intéressé par tes exemples
ca serais gentil que tu me les envois
je suis débutant et je voudrais importer des données d'une base oracle vers excel
et je suis intéressé par tes exemples
ca serais gentil que tu me les envois
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
valfverine
Messages postés
1
Date d'inscription
mercredi 1 juillet 2009
Statut
Membre
Dernière intervention
1 juillet 2009
2
1 juil. 2009 à 16:25
1 juil. 2009 à 16:25
Bonjour
Est-il encore possible de m'envoyer ces fichiers ?
Merci
Est-il encore possible de m'envoyer ces fichiers ?
Merci
antoine62_isi
Messages postés
1
Date d'inscription
lundi 2 août 2010
Statut
Membre
Dernière intervention
2 août 2010
2
2 août 2010 à 08:24
2 août 2010 à 08:24
Bonjour,
Je suis amené à travailler sur le sujet, et j'aimerais bien récupérer ces fichiers Excel à titre d'exemple.
Est-il possible de me les faire parvenir ?
Merci d'avance !
antoine62_isi@hotmail.com
Je suis amené à travailler sur le sujet, et j'aimerais bien récupérer ces fichiers Excel à titre d'exemple.
Est-il possible de me les faire parvenir ?
Merci d'avance !
antoine62_isi@hotmail.com
Bonjour,
J'ai fais quelques tests de connexions à des bases de donées oracle et MSSQL.
Je peux vous faire passer un fichier excel avec des exmples qui permettent :
De lister et initialiser une feuille excel avec le nom des champs d'une table.
De mettre à jour les champs d'une table de la base de données en fonction de cellule d'une feuille excel.
De récupérer les données d'une table de la base de données dans une feuille excel.
Si vous êtes interressé, faites moi un courriel, étant nouveau sur ce site, je ne sais pas comment lier des fichier excel dans une réponse.
J'ai fais quelques tests de connexions à des bases de donées oracle et MSSQL.
Je peux vous faire passer un fichier excel avec des exmples qui permettent :
De lister et initialiser une feuille excel avec le nom des champs d'une table.
De mettre à jour les champs d'une table de la base de données en fonction de cellule d'une feuille excel.
De récupérer les données d'une table de la base de données dans une feuille excel.
Si vous êtes interressé, faites moi un courriel, étant nouveau sur ce site, je ne sais pas comment lier des fichier excel dans une réponse.
Bonjour Cbelliss
je cherche une solution que tu as évoqué dans le post "[Oracle et VBA Excel] Requête sur table
"
je souhaiterai mettre à jour les champs d'une table de la base de données en fonction de cellule d'une feuille excel.
Peux tu me faire parvenir ton fichier excel ou m'expliquer la marche à suivre.
Merci pour ton aie
je cherche une solution que tu as évoqué dans le post "[Oracle et VBA Excel] Requête sur table
"
je souhaiterai mettre à jour les champs d'une table de la base de données en fonction de cellule d'une feuille excel.
Peux tu me faire parvenir ton fichier excel ou m'expliquer la marche à suivre.
Merci pour ton aie
bylka213
Messages postés
34
Date d'inscription
vendredi 14 mars 2008
Statut
Membre
Dernière intervention
31 août 2010
2 juin 2008 à 16:43
2 juin 2008 à 16:43
Salut cbelliss,
Je voulais savoir si tu pouvais m'aider car j'ai besoin d'en apprendre plus sur les liens qui existent entre oracle et excel on me demande d'attaquer une base oracle à partir de feuilles excel.
Merci
a+
Je voulais savoir si tu pouvais m'aider car j'ai besoin d'en apprendre plus sur les liens qui existent entre oracle et excel on me demande d'attaquer une base oracle à partir de feuilles excel.
Merci
a+
Bonjour Monsieur,
J'ai besoin de vos fichiers si vous pouvez me les commnuiquer ca serait très sympas.
Merci d'avance.
Bonjour,
J'ai fais quelques tests de connexions à des bases de donées oracle et MSSQL.
Je peux vous faire passer un fichier excel avec des exmples qui permettent :
De lister et initialiser une feuille excel avec le nom des champs d'une table.
De mettre à jour les champs d'une table de la base de données en fonction de cellule d'une feuille excel.
De récupérer les données d'une table de la base de données dans une feuille excel.
Si vous êtes interressé, faites moi un courriel, étant nouveau sur ce site, je ne sais pas comment lier des fichier excel dans une réponse.
J'ai besoin de vos fichiers si vous pouvez me les commnuiquer ca serait très sympas.
Merci d'avance.
Bonjour,
J'ai fais quelques tests de connexions à des bases de donées oracle et MSSQL.
Je peux vous faire passer un fichier excel avec des exmples qui permettent :
De lister et initialiser une feuille excel avec le nom des champs d'une table.
De mettre à jour les champs d'une table de la base de données en fonction de cellule d'une feuille excel.
De récupérer les données d'une table de la base de données dans une feuille excel.
Si vous êtes interressé, faites moi un courriel, étant nouveau sur ce site, je ne sais pas comment lier des fichier excel dans une réponse.
Bonjour cbelliss,
Je suis en pleine recherche d'automatisation de tableaux de bord avec des requètes SQL alimentées par des cellules d'Excel. Je pense que le fichier auquel vous faîtes allusion pourrais m'aider.
Pouvez vous me l'envoyer s'il vous plaît.
Je vous remercie d'avance.
Cordialement,
mcali
Je suis en pleine recherche d'automatisation de tableaux de bord avec des requètes SQL alimentées par des cellules d'Excel. Je pense que le fichier auquel vous faîtes allusion pourrais m'aider.
Pouvez vous me l'envoyer s'il vous plaît.
Je vous remercie d'avance.
Cordialement,
mcali
camet
Messages postés
4
Date d'inscription
samedi 10 janvier 2004
Statut
Membre
Dernière intervention
8 février 2008
7
8 févr. 2008 à 18:36
8 févr. 2008 à 18:36
Bonjour pourriez vous m'envoyer votre fichier excel.
Je suis tres interesse.
Merci bcp.
Je suis tres interesse.
Merci bcp.
bonjour
je suis novice en la matiére, votre fichier excel m'interesse enormement, en effet je dois créer une macro sous excel pour importer des résutats d'une requête oracle. Je vous remercie d'avance
je suis novice en la matiére, votre fichier excel m'interesse enormement, en effet je dois créer une macro sous excel pour importer des résutats d'une requête oracle. Je vous remercie d'avance
bonjour,
j'aimerais aussi avoir ce fichier car je suis aussi un débutant
merci pour votre aide mail : lediz2001@yahoo.fr
Bonne joournée
j'aimerais aussi avoir ce fichier car je suis aussi un débutant
merci pour votre aide mail : lediz2001@yahoo.fr
Bonne joournée
bonjour cbelliss,
est-il possible d'obtenir également ces fichiers ?
En te remerciant d'avance,
mon adresse snake111_mgs@hotmail.fr
est-il possible d'obtenir également ces fichiers ?
En te remerciant d'avance,
mon adresse snake111_mgs@hotmail.fr
OUMOMO
Messages postés
1
Date d'inscription
jeudi 16 juin 2011
Statut
Membre
Dernière intervention
16 juin 2011
16 juin 2011 à 15:17
16 juin 2011 à 15:17
Bonjour tous le monde,
Je dois effectuer à peu près le même travaille que Jacques13.
Vous seraient ils possible de m'envoyer une de vos réalisations en guise d'exemple?
Savez vous comment fait on pour se connecter à une base informix depuis Excel?
Merci de votre aide. Voici mon courriel : oumaring@hotmail.fr
Je dois effectuer à peu près le même travaille que Jacques13.
Vous seraient ils possible de m'envoyer une de vos réalisations en guise d'exemple?
Savez vous comment fait on pour se connecter à une base informix depuis Excel?
Merci de votre aide. Voici mon courriel : oumaring@hotmail.fr
canaum
Messages postés
1
Date d'inscription
mercredi 17 août 2011
Statut
Membre
Dernière intervention
17 août 2011
17 août 2011 à 18:38
17 août 2011 à 18:38
Bonsoir a tous,
Je vois que ce poste date d'un certain temps cependant je suis exactement dans la même problèmatique ! Je ne connais pas la marche a suivre pour automatiser la connexion a une base oracle donc si ce fichier peux m'aider je serais très heureux que quelqu'un me l'envoie.
mon adresse est loic-breton@live.fr
Merci d'avance
Je vois que ce poste date d'un certain temps cependant je suis exactement dans la même problèmatique ! Je ne connais pas la marche a suivre pour automatiser la connexion a une base oracle donc si ce fichier peux m'aider je serais très heureux que quelqu'un me l'envoie.
mon adresse est loic-breton@live.fr
Merci d'avance
Bonjour,
Très simple: je le fais régulièrement. Il faut déjà charger le pilote ODBC d'Oracle (et pas celui de Mirosoft), puis d'instancier la liaison avec Oracle (i.e.: lancer l'ODBC Data Source Administrator et ajouter une source externe en spécifiant "Data Source Name" (ce que vous voulez et qui identifiera votre source de données), éventuellement la "Description" (un commenatire explicatif), et les plus importants le "TNS Service Name" (le nom de la connexion d'accès à la base Oracle = le TNS Name au sens Oracle), et bien sur le "User ID", c'est-à-dire le nom d'utilisateur Oracle pour la connexion.
Le mot de passe peut être laissé à vide ou rempli : dans le premier cas il sera demandé à chaque connexion, dans le second tout sera automatique mais in sera stocké en clair dans un fichier!
Enfin dans le dernier onglet pourra être rentré la requête Oracle testée (ce qui peut permettre des requêtes qu'Oracle sait gérer mais qu'Excel ne peut pas générer! - et on s'en moque car dans tous les cas Excel est capable d'importer ces données dans sa feuille : c'est ce qui compte!).
Nota:
1 - ne pas oublier *** au niveau système Windows *** (Sytem Properties --> Advanced --> Environment variables --> System Variables) de rajouter la variable ORACLE_HOME et dans le PATH le chemin d'accès à Oracle ( {ORACLE_HOME}\bin - à claquer "en dur")
2 - relancer Excel avant d'importer les données !
3 - pour ne pas trop ralentir Excel, pour le formattage automatique des données, un conseil d'ami : décochez l'option "resize column" car ainsi j'ai pu faire passer la durée d'un import de 25 minutes à 2 !!!
Enjoy!
Très simple: je le fais régulièrement. Il faut déjà charger le pilote ODBC d'Oracle (et pas celui de Mirosoft), puis d'instancier la liaison avec Oracle (i.e.: lancer l'ODBC Data Source Administrator et ajouter une source externe en spécifiant "Data Source Name" (ce que vous voulez et qui identifiera votre source de données), éventuellement la "Description" (un commenatire explicatif), et les plus importants le "TNS Service Name" (le nom de la connexion d'accès à la base Oracle = le TNS Name au sens Oracle), et bien sur le "User ID", c'est-à-dire le nom d'utilisateur Oracle pour la connexion.
Le mot de passe peut être laissé à vide ou rempli : dans le premier cas il sera demandé à chaque connexion, dans le second tout sera automatique mais in sera stocké en clair dans un fichier!
Enfin dans le dernier onglet pourra être rentré la requête Oracle testée (ce qui peut permettre des requêtes qu'Oracle sait gérer mais qu'Excel ne peut pas générer! - et on s'en moque car dans tous les cas Excel est capable d'importer ces données dans sa feuille : c'est ce qui compte!).
Nota:
1 - ne pas oublier *** au niveau système Windows *** (Sytem Properties --> Advanced --> Environment variables --> System Variables) de rajouter la variable ORACLE_HOME et dans le PATH le chemin d'accès à Oracle ( {ORACLE_HOME}\bin - à claquer "en dur")
2 - relancer Excel avant d'importer les données !
3 - pour ne pas trop ralentir Excel, pour le formattage automatique des données, un conseil d'ami : décochez l'option "resize column" car ainsi j'ai pu faire passer la durée d'un import de 25 minutes à 2 !!!
Enjoy!
un code vba pour exporter une base oracle à un fichier excel
et hop :
Sub functionname()
'init variable
Dim onglet As String
Dim colonne As String
Dim ncolonne As Integer
Dim Requete As String
Requete = ""
'===========================================================
'CONNEXION A LA BASE
'===========================================================
'Connexion à la base
ORACLE_CONNECTION = "USER/PASSWORD"
ORACLE_INSTANCE = "INSTANCENAME"
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.dbOpenDatabase(ORACLE_INSTANCE, ORACLE_CONNECTION, 0&)
onglet = "FEUIL1"
colonne = "A:A"
ncolonne = 1
' QUERY CONSTRUCTION
Requete = _
"select * from TABLENAME " & _
"order by CHAMPS desc"
'sauvegarde des valeurs de la feuille
'todo
'effacement de la feuille
With Worksheets(onglet)
.Cells.Clear
End With
If OraSession.LastServerErr = 0 Then
' EXEC REQUÊTE ET VALORISATION DES CHAMPS
'MsgBox Requete
Set OraDynaset = OraDatabase.dbcreatedynaset(Requete, 0&)
i = 2
'MsgBox OraDynaset.FIELDS.Count
While Not OraDynaset.EOF
For j = 0 To OraDynaset.Fields.Count - 1
Sheets(onglet).Cells(i, j + 1) = OraDynaset.Fields(j).Value
Next
OraDynaset.MoveNext
i = i + 1
Wend
End If
End Sub
'=========================================================
par contre ce code ne remonte pas l'entête (nom des champs de la table)
Sub functionname()
'init variable
Dim onglet As String
Dim colonne As String
Dim ncolonne As Integer
Dim Requete As String
Requete = ""
'===========================================================
'CONNEXION A LA BASE
'===========================================================
'Connexion à la base
ORACLE_CONNECTION = "USER/PASSWORD"
ORACLE_INSTANCE = "INSTANCENAME"
Set OraSession = CreateObject("OracleInProcServer.XOraSession")
Set OraDatabase = OraSession.dbOpenDatabase(ORACLE_INSTANCE, ORACLE_CONNECTION, 0&)
onglet = "FEUIL1"
colonne = "A:A"
ncolonne = 1
' QUERY CONSTRUCTION
Requete = _
"select * from TABLENAME " & _
"order by CHAMPS desc"
'sauvegarde des valeurs de la feuille
'todo
'effacement de la feuille
With Worksheets(onglet)
.Cells.Clear
End With
If OraSession.LastServerErr = 0 Then
' EXEC REQUÊTE ET VALORISATION DES CHAMPS
'MsgBox Requete
Set OraDynaset = OraDatabase.dbcreatedynaset(Requete, 0&)
i = 2
'MsgBox OraDynaset.FIELDS.Count
While Not OraDynaset.EOF
For j = 0 To OraDynaset.Fields.Count - 1
Sheets(onglet).Cells(i, j + 1) = OraDynaset.Fields(j).Value
Next
OraDynaset.MoveNext
i = i + 1
Wend
End If
End Sub
'=========================================================
par contre ce code ne remonte pas l'entête (nom des champs de la table)