- ベストアンサー
showメソッドの「,Me」について
VBAの勉強に励んでいます。 参考書等を読んでもわからないことがあります。 Private Sub Command2_Click() Form2.Show vbModeless, Me MsgBox "vbModeless" End Sub 「Form1のcommand2ボタンを押すとForm2が表示される。」という動作を作成しているのですが、この記述の中の「, Me」は何をあらわしているのでしょうか。 私の参考書では「Form2.Show vbModeless」で止まっているため、いまひとつ理解ができません。 ばかばかしい質問かもしれないのですが、本気で考えています。お手数をおかけしますが、ご教授願えますか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#3>VBAではshowメソッドの第2引数は設定できないのですか? VBAでは、Form.Show の第2引数はありません(設定できません)
その他の回答 (2)
- osamuy
- ベストアンサー率42% (1231/2878)
> vbModelessのあとに「,Me」を書いた場合と書かない場合とではどう違う showの第2引数は、フォームの所有者を指定します。 所有者のフォーム(Form1)をHideするとForm2もHideし、Form1をCloseすると、Form2もCloseします。 Modalですと、Form2を表示している間は、Form1は操作不能になります。 VB持ってないので試さないで書いてますが(VBAだとうまくいかなかった)。
補足
>VBAだとうまくいかなかった もしかして、VBAではshowメソッドの第2引数は設定で きないのですか?いつも「showの引数が一致しません」とでるのですよね。設定できないならば納得なのですが。。
- osamuy
- ベストアンサー率42% (1231/2878)
Meは、このコード自体が動いているオブジェクトを表します。 > Form1のcommand2ボタン ですと、MeはForm1ですね。
補足
MeはForm1であるところまでは想像がつくのですが、vbModelessのあとに「,Me」を書いた場合と書かない場合とではどう違うのでしょうか?
補足
>VBAでは、Form.Show の第2引数はありません やはりそうだったんですね。いろいろと参考にし過ぎて、VBとVBAが混乱してしまったようです。 問題解決です。どうもありがとうございました。