Just nu i M3-nätverket
Gå till innehåll

Läsa data från Access-tabell


PerboMan

Rekommendera Poster

Hej!

 

Jag har ett VBA-makro som funkar utmärkt i Office 2007. Det gör en massa saker, men det som ger mig problem är att en datamängd är lagrad i en Access fil.

 

Rutinen för att komma åt datat är ur MS egen online hjälp, men jag fixade till den så att den funkade i Office 2007 med hjälp av ett tips som jag kanske hittade här på Eforum.

 

Nu testar jag i Office 2010, och då failar det i rad 11, men jag vet att det är Provider värdet på rad 9 som behöver ändras.

 

Jag trodde att det var så enkelt som att ändra till 14.0, men icke...

Är det någon som har ett tips?

 

Allra helst skulle jag förstås vilja ha en möjlighet att köra samma fil i både Office 2007 och 201, men jag har på känn att det är bortom VBA.

 

Sub data2()
   ' Hämta data från Access-fil
   Dim sSQL As String
   Dim rs As ADODB.Recordset
   Dim cn As ADODB.Connection
   Dim sokvag As String
   Dim ostring As String
   sokvag = Worksheets("Kalkylstart").Cells(1, 3).Value & "BAPU_T12.accdb"
   ostring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & sokvag & ";Persist Security Info=False"
   Set cn = New ADODB.Connection
   cn.Open ostring
   Set rs = New ADODB.Recordset
   rs.Open SQL_sträng, cn

   ActiveWorkbook.Sheets("Utdata Detaljer").Cells(3, 1).CopyFromRecordset rs

   rs.Close
   Set rs = Nothing
   cn.Close
   Set cn = Nothing
End Sub

 

 

 

/Pär B

Länk till kommentar
Dela på andra webbplatser

Det går att känna av vilken version av Excel du köra boken på, Iochmed att det är en sträng du använder för att skapa koppling borde det inte vara något problem att lösa det via den metoden. Du kan läsa av version via

Application.Version

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...