[OOoBasic] Import Base dans Excel

Import Base dans Excel [OOoBasic] - VB/VBA/VBS - Programmation

Marsh Posté le 12-04-2006 à 15:07:48    

Salut à tous!!
 
je suis newbiz... en développement, surtout lorsqu'il s'agit de lier deux environnement: MS Office avec OpenOffice 2.0.2!!
 
Voilà j'ai créé une BD sous Base et j'aimerai importer le résultats d'une requête SQL (enregistrée dans ma BD) dans une feuille Excel... mais le pb: me propose pas d'importer des BD au format ".odb" !
 
ie faire un bête import comme on peut le faire de Access à Excel!!!
 
Pouvez vous m'aider svp!!
 
merciiiiiiiiii !!!

Reply

Marsh Posté le 12-04-2006 à 15:07:48   

Reply

Marsh Posté le 12-04-2006 à 16:56:59    

t'as qu'a stocker le résultat de ta requête sql dans un fichier csv. Excel sait lire de format (et beaucoup d'autres applis aussi).


Message édité par rufo le 12-04-2006 à 16:57:26
Reply

Marsh Posté le 13-04-2006 à 08:16:07    

Déjà je n'arrive pas à stocker le résultat d'une requête sql dans un fichier csv!!  
 
Ensuite c'est une requête que j'exécute souvent, donc c'est pas tellement le résultat qui m'intéresse, mais son exécution à chaque ouverture du fichier Excel pour actualiser mes données...

Reply

Marsh Posté le 13-04-2006 à 09:50:22    

tu veux lancer ta requête SQL à partir d'excel? Si c'est le cas, je te conseille de passer par ODBC + macro vba.

Reply

Marsh Posté le 13-04-2006 à 10:52:48    

OUI exact!
 
Justement c'est la connexion qui pose problème: savez-vous quel fournisseur (provider: OLE DB Provider For ODBC?), quel driver utiliser?
 
Parce que j'ai déjà essayé mais je ne dois pas avoir le bon driver (s'il y en a un?).
 
                   
 
 
 

Reply

Marsh Posté le 13-04-2006 à 11:52:57    

ben tu cherches dans la liste des drivers dispo celui concernant le type de ta BD. Si tu ne le trouves pas, va sur le site du constructeur (s'il en a un)...

Reply

Marsh Posté le 13-04-2006 à 13:29:57    

J'ai été sur le site d'OpenOffice.org: nada niete à ce sujet!!
 
je vais essayer quand même de chercher du côté des JDBC parce qu'il paraît que Base est entièrement Java!!


---------------
Plexi
Reply

Marsh Posté le 13-04-2006 à 15:19:31    

au fait, pourquoi avoir choisi un format de bd a priori peu utilisé? T'étais obligé? Parce que si t'as le choix, pourquoi pas utiliser MySql? Mysql permet d'exporter le résultat d'une requête dans un csv utilisable par excel. Et y'a un driver odbc dispo pour lancer une requête à partir d'excel...

Reply

Marsh Posté le 14-04-2006 à 08:03:03    

En fait je dois faire en sorte que mon développement ne demande l'achat d'aucun outil. j'ai pris ce que j'avais sous la main: OOo!!
 
A vrai dire, je dois avouer que je regrette!! On ne fait pas toujours les bons choix en conception...
 
Là à force de chercher des trucs qui n'existent pas: je suis perdue et je vx tout recommencer.
 
Si je vous décris ce que je dois faire, seriez-vous de me donner des pistes avec MySQL que je ne connais pas non plus!!
 
Please.

Reply

Marsh Posté le 14-04-2006 à 09:36:22    

tu sais que ça existe les softs libres (gratuits). MySQl + phpMyAdmin, tu les trouves en téléchargement sur leurs sites respectifs.
 
Au final, quel est le but à atteindre? Que doit faire ton appli?

Reply

Marsh Posté le 14-04-2006 à 09:36:22   

Reply

Marsh Posté le 14-04-2006 à 10:16:02    

:jap: Je connais ce couple de logiciels, mais surtout pour le développement web!
Moi jusqu'à maintenant j'ai fait du client serveur avec DB2/AS400 et PostgreSQL/Linux... et côté client Access/windows XP; développement VB6 et un peu de java.
 

rufo a écrit :

Au final, quel est le but à atteindre? Que doit faire ton appli?


 
J'ai une BD  associée à un soft Intégrale Ligne 500, côté serveur (Windows 2000 server). Pour me connecter à cette BD j'ai un driver spécial (Ligne 500 ODBC) et j'ai créé un DSN fichier.
Sur cette base, je dois effectuer des requêtes SQL chaque mois, pour mettre à jour un fichier Excel qui contient une table (résultat de ma requête) sur laquelle est basée un TCD et des tableaux de bord toujours dans Excel.
 
Cette table Excel peut être modifiée par l'utilisateur et je dois enregistrer ses modif dans une BD local...
 
Mon pb c'est:
- associer des requêtes à des plages proprement dites (une plage verticale représente un mois par exemple)
- faire en sorte que chaque modif dans la table implique une mise à jour des TCD et Tableaux de bord
- actualiser ma BD locale suite aux modifications.
 
 :hello: et peut-être d'autres problèmes qui ne tarderont pas à venir!!!
 
Comment m'y prendre??
 

Reply

Marsh Posté le 14-04-2006 à 10:51:32    

Moi, je séparerais le pb en 2 :
1) extraction périodique des données et remplissage du fichier excel
2) MAJ de la BD avec les infos saisies par l'utilisateur dans le fichier excel
 
Pour le 1), je ferais un petit programme .exe en VB qui va extraire les données et les mettre dans Excel. Extraction via ODBC et insertion dans Excel via COM (en gros, VB va ouvrir une instance d'excel et utiliser les primitives d'excel pour manipuler les cellules, feuilles...). Cet .exe sera lancé périodiquement via le planificateur de Windows (ou la commande DOS "at" ).
 
Pour le 2), dans excel, tu fais une macro en VBA (pourquoi pas sur l'événement onBeforeClose) qui va mettre à jour la BD. Là encore, tu vas utiliser ODBC.
 
Voilà, c'est une des solutions pour ton pb...

Reply

Marsh Posté le 20-04-2006 à 07:02:14    

Bonjour!
 
Encore quelques précisions!
 
[quotemsg]Moi, je séparerais le pb en 2 :
1) extraction périodique des données et remplissage du fichier excel[quotemsg]
 
Pour cette partie, j'utilise mon DSN comme source de données!Malheureusement je n'ai pas de Visual Studio... avec VB Express je peux m'en sortir?
 
[quotemsg]2) MAJ de la BD avec les infos saisies par l'utilisateur dans le fichier excel[quotemsg]
 
Pour le 2), la BD que je mets à jour c'est MySQL?

Reply

Marsh Posté le 20-04-2006 à 09:17:18    

Plexi86 a écrit :

Bonjour!
 
Encore quelques précisions!
 
[quotemsg]Moi, je séparerais le pb en 2 :
1) extraction périodique des données et remplissage du fichier excel[quotemsg]
 
Pour cette partie, j'utilise mon DSN comme source de données!Malheureusement je n'ai pas de Visual Studio... avec VB Express je peux m'en sortir?
 
[quotemsg]2) MAJ de la BD avec les infos saisies par l'utilisateur dans le fichier excel[quotemsg]
 
Pour le 2), la BD que je mets à jour c'est MySQL?


 
1) Je pense que VB express devrait suffir. Faut juste vérifier que tu peux manipuler n'importe quelle BD via ODBC et que tu peux faire du COM.
2) La BD, c'est la même que celle manipulée en 1). Si t'arrives à la manipuler via l'ODBC, y'a pas de raison de la changer. Maintenant, c'est sûr que MySql est plus répendu que Base et il dispose de pleins d'outils/drivers.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed