P
Pedro
Guest
Bonjour,
Je veux exporter les données contenues dans un classeur Excel fermé vers une table Access.
J'ai trouvé deux codes sources et mon problème est de ne pas savoir lier les deux codes sources , ce qui me permettra d'exporter les données de la feuille (que je fixer par défaut) du classeur du fichier qui serait sélectionné: c
1- Le premier me permet à tavers une boîte de dialog choisir le fichier:
Sub macro1()
FileFilter ="Excel Files (*.XLS),"*.XLS"
Caption = "Please Select a file" & the User
SelectedFile= Application.GetOpenFilename(FileFilter, , Caption)
...
2- Le deuxième me permet de transferer les données de la feuille active d'un fichier déjà ouvert:
Sub synthese()
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=C:\Test.mdb;"
Set rs = New ADODB.Recordset
rs.Open "Table1", cn, adOpenKeyset, adLockOptimistic, adCmdTable
r = 2
Do While Len(Range("A" & r).Formula) > 0
With rs
.AddNew
.Fields("Nom") = Range("A" & r).Value
.Fields("Prenom") = Range("B" & r).Value
.Fields("Age") = Range("C" & r).Value
.Fields("Ville") = Range("D" & r).Value
.Update
End With
r = r + 1
Loop
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
Merci pour votre aide
Je veux exporter les données contenues dans un classeur Excel fermé vers une table Access.
J'ai trouvé deux codes sources et mon problème est de ne pas savoir lier les deux codes sources , ce qui me permettra d'exporter les données de la feuille (que je fixer par défaut) du classeur du fichier qui serait sélectionné: c
1- Le premier me permet à tavers une boîte de dialog choisir le fichier:
Sub macro1()
FileFilter ="Excel Files (*.XLS),"*.XLS"
Caption = "Please Select a file" & the User
SelectedFile= Application.GetOpenFilename(FileFilter, , Caption)
...
2- Le deuxième me permet de transferer les données de la feuille active d'un fichier déjà ouvert:
Sub synthese()
Dim cn As ADODB.Connection, rs As ADODB.Recordset, r As Long
Set cn = New ADODB.Connection
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=C:\Test.mdb;"
Set rs = New ADODB.Recordset
rs.Open "Table1", cn, adOpenKeyset, adLockOptimistic, adCmdTable
r = 2
Do While Len(Range("A" & r).Formula) > 0
With rs
.AddNew
.Fields("Nom") = Range("A" & r).Value
.Fields("Prenom") = Range("B" & r).Value
.Fields("Age") = Range("C" & r).Value
.Fields("Ville") = Range("D" & r).Value
.Update
End With
r = r + 1
Loop
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End Sub
Merci pour votre aide