alonsyl
Messages postés348Date d'inscriptionmardi 6 avril 2004StatutMembreDernière intervention 6 novembre 2008
-
29 nov. 2004 à 11:59
cs_ITALIA
Messages postés2169Date d'inscriptionvendredi 20 avril 2001StatutMembreDernière intervention30 juin 2009
-
30 nov. 2004 à 08:04
bonjour,
j'administre un site intranet avec comme noyeau une base access.
dans un repertoire different de ma base access, j'ai un classeur excel pourvu d'une procedure evenementielle 'Workbook_Open()' qui est sense mettre a jour les donnees du classeur a son ouverture.
en fait, je desire que le client client puisse cliquer sur un lien hypertexte d'une de mes pages web et que ce lien ouvre le classeur excel en mettant a jour les donnees qu'il contient depuis ma base access.
pour que la mise a jour de ma base access puisse avoir lieu, j'ai realise le petit code suivant:
Private Sub Workbook_Open()
Dim cnx As New ADODB.Connection
Dim rst As New ADODB.Recordset
chaine de connection => voire plus bas
cnx.Open
rst.Open "SELECT * FROM Base;", cnx
aaa = 1
Do While rst.EOF <> True
Sheets("donnees").Cells(aaa, 1) = rst(1)
aaa = aaa + 1
rst.MoveNext
Loop
rst.Close
cnx.Close
End Sub
tout ca plante car ma chaine de connection semble ne pas etre valide: voici ce que j'ai essaye:
'cnx.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Left(ActiveWorkbook.FullName, (Len(ActiveWorkbook.FullName) - 13)) & "/Donnees/DONNEES.mdb;"
cs_ITALIA
Messages postés2169Date d'inscriptionvendredi 20 avril 2001StatutMembreDernière intervention30 juin 20099 30 nov. 2004 à 08:04
t'as essayé en ADO ??? :
En Cochant Projet...Références..Microsoft DAO 3.51 Object Library.
Set Db = OpenDatabase(Left(ActiveWorkbook.FullName, (Len(ActiveWorkbook.FullName) - 13)) & "/Donnees/DONNEES.mdb")
Set Rq = Db.OpenRecordset("SELECT * FROM Base")
If Rq.RecordCount <> 0 Then
Do Until Rq.eof