アクセスフォーム内にhtmlメニューを組み込もうとしています。Web ページから Access に (ユーザーが Web ページ内で選択したものに関する) フィードバックを取得するにはどうすればよいですか。Access 2007、MS WebBrowser コンポーネントを使用しています。
任意の助けをいただければ幸いです
アクセスフォーム内にhtmlメニューを組み込もうとしています。Web ページから Access に (ユーザーが Web ページ内で選択したものに関する) フィードバックを取得するにはどうすればよいですか。Access 2007、MS WebBrowser コンポーネントを使用しています。
任意の助けをいただければ幸いです
ホスティング フォームを呼び出したり、WebBrowser 内から Access でアクティビティを開始したりする公式の方法はありません。
ただし、私が使用する気の利いたトリックが 1 つあります。ドキュメントが読み込まれた後、いくつかの要素の属性を Access フォームに設定できます。htmlDoc.all.formDiv.setAttribute "outerForm", Me
次に、WebBrowser 内からフォームのプロパティとメソッドを参照できます。
document.all.formDiv.outerForm.Application.DoCmd.Close(2,"webForm")
編集:奇妙なことに、タグ
を追加すると参照が null のままのようです。<META http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
一見、プロパティはより厳密になり、setAttribute は文字列を想定しています。
次のオプションは、アクセス フォーム ('Me') を WebBrowser の変数に渡すことです。ただし、グローバル変数または関数が直接公開されているようには見えません。
ただし、これは HTMLBodyElement のプロトタイプに関数を追加することで簡単に克服できます。関数はその引数をグローバル変数に渡し、同様に任意のクラスを返すことができます。
html ページでは、次のようになります。
var frm = null;
HTMLBodyElement.prototype.setForm = function(f){frm = f}
Access からは、参照を下に渡すだけです: htmlDoc.document.body.setForm(Me)
.