- ベストアンサー
ACCESS2007のコマンドライン引数に関して
いつも大変お世話になっております。 コマンドプロントからaccessファイルを起動させて、/cmd以下の数字を起動したフォームのテキストボックス内に入れたいのですが、なかなかうまくいきません。 起動コマンドは、 "C:\Program Files\Microsoft Office\Office12\MSACCESS.EXE" C:Users\admin\Desktop\text.accdb /cmd 1 として、アクセスファイルの起動には成功しています。 つたない説明ですが、ご教授頂ければと思います。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
Acc2007 は持ち合わせておりませんので、あしからず。 提示された起動コマンドを実行後 Alt + F11 でVBE の画面にして Ctrl + G にてイミディエイトウィンドウで ?command を実行 1 が返ってくるのを確認してから お望みのフォームのOpen時イベントに Me!テキストコントロール名 = Command と記述すればファームが立ち上がったときに入っているかと? 検証できる環境ではありませんので、ここまで。
その他の回答 (2)
- piroin654
- ベストアンサー率75% (692/917)
#1です。リンク先の下のほうにCommandについて 説明と使い方が簡単にありますが、#2さんの方法でも、あるいは テキストボックスのコントロールソースに =Command() とすればコマンドラインの値がテキストボックスに 入ります。 たとえば、以下はVBSの場合ですが、 Option Explicit CreateObject("WScript.Shell").Exec """C:\Program Files\Microsoft Office\Office12 \MSAccess.Exe""" & _ """C:Users\admin\Desktop\text.accdb""/x """ & "m1" & """ /cmd """ & 1 & """" これはマクロm1(フォームを開くマクロ)を実行し、 数値の1を引き渡します。引き渡された1は フォームを開くと自動的にテキストボックスに 表示されます。cmd、x の順番のほうが早いかも しれません。
お礼
度々のご回答ありがとうございます。 無事に解決しました。
- piroin654
- ベストアンサー率75% (692/917)
補足
ご回答ありがとうございます。 どうも、私が勘違いをしていたみたいで、/cmdでは、数字を指定したテキストボックスへ入れることはできないようですね。
お礼
ご回答ありがとうございます。 無事にテキストボックスへ数字を入れることができました。