Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Excel 2016)
DAO3.6が使えなくなる日
投稿日時: 19/05/05 15:43:24
投稿者: ngc1955

Office365Excelです。20年前に作ったデータアクセスのマクロですがDAO3.6ライブラリを参照していますが、ずっと問題なく動作しておりました。
昨日Windows10の手動更新のリストでofficeXPが更新できないとか、思い当たるふしのないメッセージがでて、その他不審な挙動もあったので、再インスツールしてみたところ、
その後「実行エラー429ActiveXコンポーネントが作成できない」のエラーが出るようになりました。ネットの情報でDAO3.6を外しMicrosoft Office 14.0 Access database engine Object Libraryにしたところ正常動作するようになりました。
 
なお他のPCに新規でインスツールしても上記と同じ挙動です。
 
質問です。
現在office365を新規でインスツールするとDAO3.6ライブラリは使えないのですか
 
さらに手持ちの他のPCは1か月くらい前インスツールしましたがDA03.6はまだ使えます。
windows10updateの詳細オプションはWindows更新時に他のMicroSof製品の更新プログラムを入手はOFFにしてあります。これをONにするとやがてDAO3.6は使えなくなりますか
 
なおこのマクロは他のユーザーにも配布してありますが、今後の事を考えた場合
〇Microsoft Office 14.0 Access database engine Object Libraryを参照するように直す
〇ADOを使ってマクロを書き直す
〇何する必要はない
 
どれがよいでしょう

回答
投稿日時: 19/05/06 14:18:29
投稿者: hatena
投稿者のウェブサイトに移動

再インストールするときに、64bit版をインストールしてませんか。
64bit版では、DAO3.6は使えないです。(下記参照)
 
64bit版でDAOを使用するとエラーになる
https://social.msdn.microsoft.com/Forums/ja-JP/11043d5b-0273-4a40-8074-fd6b2cd1615f/64bit2925612391dao12434203512999212377124271239212456125211254012?forum=vbgeneralja
 
ちなみに、当方、Office 365 ProPlus 32bit版 では、DAO3.6 は問題なく参照設定できます。
 
今後のことを考えるなら、下記の2択でしょうね。
 
〇Microsoft Office *.* Access database engine Object Libraryを参照するように直す
〇ADOを使ってマクロを書き直す

投稿日時: 19/05/06 19:25:35
投稿者: ngc1955

hatenaさんありがとうございます
 
>再インストールするときに、64bit版をインストールしてませんか。
>64bit版では、DAO3.6は使えないです。(下記参照)
 
まったくおっしゃるっとりでした。
今オプションション選択をして32bit版をインスツールしたら両方のライブラリで動くようになりました!.
 
ということは・・・半年前インスツールした時には規定値が32bitでいつのまにか64bit
に変更されているという事ですよね。
MSアカウントからのoffice365のインスツールは簡単で高速で便利と思っていましたが
思わぬ落とし穴がありました。
 

投稿日時: 19/05/06 20:47:50
投稿者: ngc1955

ありがとうございました。解決済みのチェック忘れました