2012-09-19 29 views
5

Ich habe ein Excel-Makro erstellt, in dem ich Microsoft.Jet.OLEDB.4.0 verwendet habe, um eine Abfrage auf Excel-Arbeitsblättern auszulösen.Microsoft.Jet.OLEDB.4.0 - Der Provider kann nicht gefunden werden oder er wird möglicherweise nicht installiert

Es funktioniert perfekt auf meiner Maschine, aber mein Client ist mit dem Problem konfrontiert. (Siehe beiliegende Siebdruck)

Client is getting this error

References I have added in the program

Hier sind Details für mein Verbindungsobjekt:

Dim cn 
Set cn = CreateObject("ADODB.Connection") 
With cn 
    .Provider = "Microsoft.Jet.OLEDB.4.0" 
    .ConnectionString = "Data Source=" & ThisWorkbook.FullName & "; Extended Properties=Excel 8.0" 
    .Open 
End With 

Bitte beachten Sie: Es ist ein Muss für mich den Code, um die Arbeit in "Windows 7"

+0

jemand bitte machen die Bilder arbeiten installieren. Ich habe 2 Bilder angehängt, aber es wird hier nicht angezeigt. – Tejas

+0

ist Ihre Maschine 32bit und die Client-Maschine 64bit? Was sind die Versionen os und Excel auf Ihrer Maschine und Ihrer Client-Maschine? – Esen

+0

Ich weiß nichts über die Version des Clients. Aber ich habe dieses Makro sowohl auf 32 als auch auf 64 Bit Windows 7 getestet und es funktioniert gut auf beiden. – Tejas

Antwort

10

Der Provider wird auf Windows 7 Office x64 fehlschlagen, da der Provider nicht unterstützt wird o Auf dieser Plattform.

Sie müssen die x64 Microsoft Access Database Engine 2010 Redistributable und ändern Sie Ihre Verbindungszeichenfolge Provider=Microsoft.ACE.OLEDB.12.0

+0

Danke Alex. Ich werde ihm sagen, dass er das gleiche installieren soll und Ihnen den aktualisierten Code senden wird. – Tejas

+3

Meine Antwort wurde schlecht angegeben, es wird auf 64bit * Büro * scheitern, aber Arbeit auf 32-Bit-Büro auf x64 Windows –

+0

Es funktioniert jetzt perfekt. Danke vielmals! – Tejas