アプリ版:「スタンプのみでお礼する」機能のリリースについて

自分のPCの場合は、EXCEL VBAでACCESSにADOで接続時してデータを抽出することが出来ますが、他PCより同じマクロを動かすと「実行時エラー'3706'、プロバイダーが見つかりません。正しくインスツールされていない可能性があります。」のエラーメッセージが出ます。
ACCESSのデータは、EXCEL VBAで自分のPCからのみOPEN出来るようになっているようですが、他のPCからもEXCEL VBAでOPEN出来るようにするにはどうしたら良いのでしょうか。
ACCESSの事は良く分からないので教えてください。
ちなみに、他のPCで直接ACCESSデータを起動するとOPEN出来ます。
宜しく、お願いします。

A 回答 (2件)

コネクションの文字列が提示されていないので何とも言えません。


{みだりに公開もできないものではありますが}
コネクションの文字列に問題があるように思います。
つながるPCとつながらないPCで「UDL」をつくって見たらどうでしょう。
空のファイルをEditorで作ってtest.udlという名前で保存
それをダブルクリックすると接続を確立するためのプログラムが立ち上がりますから
そこでプロバイダーなどを選んで「接続テスト」がOKになるようにします。
保存したあとそのファイルをEditorでみると接続文字列が分かると思います。
ウイザード代わりに使うということです。
その後でそれぞれのUDLの内容を比較したら何らかの回答が得られるのではないかと思います。
    • good
    • 4
この回答へのお礼

回答有難うございました。
自分のPCも他のPCもoffice2003を使用しているのですが、原因が分かりました。
Provider=Microsoft.ACE.OLEDB.12.0;とoffice2007の設定としていました。教えて頂いた方法で、Provider=Microsoft.Jet.OLEDB.4.0;に変更して他のPCでも動作するようになりました。
自分のPCでは何故動作したかは良く分かりませんが、excel2007のファイルコンバータをインスツールしていたので動作したのかも知れません。
「接続テスト」の手法を教えて頂き、大変参考になりました。
なお、Microsoft.ACE.OLEDBとMicrosoft.Jet.OLEDBの違いを教えて貰えれば嬉しいのですが。
宜しく、お願いします。

お礼日時:2009/12/18 20:58

>Microsoft.ACE.OLEDBとMicrosoft.Jet.OLEDBの違いを教えて貰えれば嬉しいのですが。


私もその辺は「試行錯誤」に近いものがあります。
SQl-ServerにつなぐときにクライアントがXpとNtがあってうまくいかなくて悩んだ挙句UDLを使う方法を探して何とか作っちゃったという状況なので。
    • good
    • 0
この回答へのお礼

皆さんどのように知識を得ているのかなと思っていましたが、試行錯誤しているのですね。
でもUDLを使う方法は、有益ですね。
色々と有難うございました。

お礼日時:2009/12/20 22:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています