- 締切済み
Access2010で参照設定の意味
OS:Windows10 64bit Access2010(32bit)でプログラムしている初心者です。 フォーム内にPDFを表示したいのでActiveXコントロールの「Microsoft Web Browser」を 貼り付けています。これを他のPCで動かすとPDFが表示されません。 VBEの参照設定から「Microsoft Web Browser」を外すと正常に表示されます。 動作は問題ないのですが、「自動的に参照設定される」意味が分かりません。 また、参照設定を外してなぜ正常に動くのかも理解できておりません。 動作させるために参照するのでは?と考えてしまいます。 理解力のない初心者プログラマを納得させる助言をいただければ幸いです。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- NotFound404
- ベストアンサー率70% (288/408)
参照設定が必要になってくるのは、そのオブジェクトのメソッドなどを VBAで利用する場合です。 フォームにオブジェクトを貼り付け、VBAで何も行わない場合は参照設定が無くても問題ありません。 参照設定に自動的に登録されるのはMS社が気を利かしているためだと思います。 自動的に登録されない場合は自分で調べて登録するので面倒。 で、そちらのMicrosoft Internet Controlsの「場所」は何になっていたのでしょう? 後学のために教えてください。 当方では、・・・\SysWOW64\ieframe.dll でしたが。 Microsoft Internet Controls のチェックを外すと動くということは、解せませんが (当方の1・Win10 Build10240のままです・・・は外さなくとも動きました) もしかしたら・・・、 Win10から標準のブラウザがEdgeになりIEは陰の存在になりましたので この辺が関係しているのかもしれません。 (バグなのか、配慮が足らないのか、仕様変更・・・不明) ご参考まで。私からは以上です。
- NotFound404
- ベストアンサー率70% (288/408)
こちらでは、 参照設定に「Microsoft Web Browser」ってのは出現しませんでしたけどねぇ? 環境による? 試したのは以下の二つ 1・Win10 64bit(ビルド10240)+ Office2016 32bit 試用版 + Reader XI 2・Win7 64bit + Office2010 + Reader X 両者ともにフォームにMicrosoft Web Browser コントロールを配置すると Microsoft Internet Controls(\SysWOW64\ieframe.dll)が参照設定に自動的に追加されました。
補足
ご回答ありがとうございます。 仰るとおり「Microsoft Internet Controls」の間違いです。 失礼いたしました。
- imogasi
- ベストアンサー率27% (4737/17069)
下記自信ありません。参考まで。 普通、参照設定は、VBEでツールー参照設定で、参照設定したいものをリストからクリックして設定します。 これもVBAのコードで設定できないのかと常づね思っていました。 そしたら、http://officetanaka.net/excel/vba/tips/tips100.htm (によるとTrueとFalseで設定するようです)。 に説明されていることを見つけました。VBAレベルのプログラムコードからでも、できることを知りました。 ほかにスクリプト以外の本格的プログラムでも、APIレベルでは、なおさらコードから設置(解除)ができると思っています(推定)。 >、「自動的に参照設定される」 はどこに書いてありましたか。質問で言うあるソフトの中に設定プログラムが入っているのかも。 実行される都度 True->False->Trueとサイクリックに設定が変化すのかも。 ーー 「Microsoft Web Browser PDF」でWEB照会するといろいろ記事が出ます。参考になる記事はありませんか。
お礼
ご回答ありがとうございます。 >>、「自動的に参照設定される」 >はどこに書いてありましたか 書いてあるのではなくActiveXコントロールを貼り付けた直後に 参照設定を見ると自動的に項目が追加されているのが確認できます。
お礼
NotFound404さん、度々ご回答ありがとうございます。 >フォームにオブジェクトを貼り付け、VBAで何も行わない場合は参照設定が無くても問題ありません フォームにActiveX(Microsoft Web Browser)コントロールを配置して、 リストボックスのClickイベントで以下のように記述しています。 リストボックスにはPDFファイルのフルパスが格納されています。 Me.Webコントロール.Navigate Me.リストボックス.Column(0) VBAで使用しているにもかかわらず参照設定を外しても動作する・・・。 この仕組がよくわからないんです(・・;) >当方では、・・・\SysWOW64\ieframe.dll でしたが。 はい、私も場所は同じです。 他のコントロール(DAOとか)は、参照設定を外してデバッグすると コンパイルエラーがでるのに、いまいち規則性がつかめません。