OVH Cloud OVH Cloud

Import d'une Bdd

4 réponses
Avatar
Cdams
Bonjour,

Je voudrais ajouter une option a la feuille fc-excelphp.
En effet la table que j'utilise est susceptible d'être modifiée par un autre
moyen qu'Excel. Alors je voudrais créer un bouton pour mettre a jour les
données d'excel, c'est-à-dire récupérer toute les données de la BDD (ou que
les nouvelles) et de les afficher dans Excel.

Est-ce que c'est possible de faire ça ?

Cdams

4 réponses

Avatar
Cdams
Pourquoi personne ne répond :'(
Sniff..

Je sais pas quoi faire moi :(

Svp... aider moi

Cdams

"Cdams" a écrit dans le message de news:

Bonjour,

Je voudrais ajouter une option a la feuille fc-excelphp.
En effet la table que j'utilise est susceptible d'être modifiée par un
autre moyen qu'Excel. Alors je voudrais créer un bouton pour mettre a jour
les données d'excel, c'est-à-dire récupérer toute les données de la BDD
(ou que les nouvelles) et de les afficher dans Excel.

Est-ce que c'est possible de faire ça ?

Cdams




Avatar
MichDenis
Bonjour Cdams,


| "c'est-à-dire récupérer toute les données de la BDD "

Ta base de données, c'est un tableau d'excel, un fichier .mdb ou autre ?

Elle est où ta base de données ? Et tu veux afficher le résultat où ?



Salutations!



"Cdams" a écrit dans le message de news:
Pourquoi personne ne répond :'(
Sniff..

Je sais pas quoi faire moi :(

Svp... aider moi

Cdams

"Cdams" a écrit dans le message de news:

Bonjour,

Je voudrais ajouter une option a la feuille fc-excelphp.
En effet la table que j'utilise est susceptible d'être modifiée par un
autre moyen qu'Excel. Alors je voudrais créer un bouton pour mettre a jour
les données d'excel, c'est-à-dire récupérer toute les données de la BDD
(ou que les nouvelles) et de les afficher dans Excel.

Est-ce que c'est possible de faire ça ?

Cdams




Avatar
Cdams
Bonjour

Ma base de données est une base mysql, elle est donc sur internet.
Je voudrais créer une macro qui récupère l'ensemble du contenu de ma bdd
mysql et l'affiche dans une feuille Excel.

Merci Denis de ta réponse

Cdams



"MichDenis" a écrit dans le message de news:

Bonjour Cdams,


| "c'est-à-dire récupérer toute les données de la BDD "

Ta base de données, c'est un tableau d'excel, un fichier .mdb ou autre ?

Elle est où ta base de données ? Et tu veux afficher le résultat où ?



Salutations!



"Cdams" a écrit dans le message de news:

Pourquoi personne ne répond :'(
Sniff..

Je sais pas quoi faire moi :(

Svp... aider moi

Cdams

"Cdams" a écrit dans le message de news:

Bonjour,

Je voudrais ajouter une option a la feuille fc-excelphp.
En effet la table que j'utilise est susceptible d'être modifiée par un
autre moyen qu'Excel. Alors je voudrais créer un bouton pour mettre a
jour
les données d'excel, c'est-à-dire récupérer toute les données de la BDD
(ou que les nouvelles) et de les afficher dans Excel.

Est-ce que c'est possible de faire ça ?

Cdams









Avatar
MichDenis
Bonjour Cdams,


Voici un début de solution... mais comme je n'ai jamais travaillé avec MySql, il se peut que tu sois amener à contribuer à la mise à
jour de cette procédure :

Tu dois ajouter la bibliothèque suivante à ton projetVBA en excel :

"Microsoft Activex Data Objects 2.0 Librairy"

Tu dois définir la requête .... si tu as plusieurs tables dans ta base, il faudra réusiner cette procédure, si tu désires que tout
se fasse automatiquement !

'-----------------------------------------
Sub ImporterDataFromMySql()

Dim Conn As ADODB.Connection
Dim Rst As ADODB.Recordset
Dim Requete As String
Dim Rg As Range

Conn.Open "Driver={mySQL};" & _
"ServerÛ1.database.com;" & _
"Port306;" & _
"Option1072;" & _
"Stmt=;" & _
"Database=mydb;" & _
"Uid=myUsername;" & _
"Pwd=myPassword;"

'Pour importer toutes les données d'une table
Requete = "Select * from NomDeLaTable"

Rst.Open Requete, Conn, adOpenStatic, adLockReadOnly
Nb = Rst.RecordCount

If Nb < 1 Then
MsgBox "Aucun enregistrement trouvé."
Else
'définir l'endroit où copiées les données
With Worksheets("Feuil1")
Set Rg = .Range("A1")
End With

'Copie le nom des champs dans la première ligne
Do
Rg.Offset(, C) = Rst.Fields(C).Name
C = C + 1
x = x + 1
Loop Until x = Rst.Fields.Count

Rg.Offset(1).CopyFromRecordset Rst
End If

Rst.Close: Conn.Close
Set Rst = Nothing: Set Conn = Nothing

End Sub
'--------------------------------------------


Salutations!

P.S. Pour les Chaînes de connection :

http://www.carlprothman.net/Default.aspx?tabid#ODBCDriverForMySQL



"Cdams" a écrit dans le message de news: %23%
Bonjour

Ma base de données est une base mysql, elle est donc sur internet.
Je voudrais créer une macro qui récupère l'ensemble du contenu de ma bdd
mysql et l'affiche dans une feuille Excel.

Merci Denis de ta réponse

Cdams



"MichDenis" a écrit dans le message de news:

Bonjour Cdams,


| "c'est-à-dire récupérer toute les données de la BDD "

Ta base de données, c'est un tableau d'excel, un fichier .mdb ou autre ?

Elle est où ta base de données ? Et tu veux afficher le résultat où ?



Salutations!



"Cdams" a écrit dans le message de news:

Pourquoi personne ne répond :'(
Sniff..

Je sais pas quoi faire moi :(

Svp... aider moi

Cdams

"Cdams" a écrit dans le message de news:

Bonjour,

Je voudrais ajouter une option a la feuille fc-excelphp.
En effet la table que j'utilise est susceptible d'être modifiée par un
autre moyen qu'Excel. Alors je voudrais créer un bouton pour mettre a
jour
les données d'excel, c'est-à-dire récupérer toute les données de la BDD
(ou que les nouvelles) et de les afficher dans Excel.

Est-ce que c'est possible de faire ça ?

Cdams