
http://oshiete1.goo.ne.jp/kotaeru.php3?q=492261
ラベルを表示したり非表示にしたりしたい
の質問をしたものなんですが、なぜ me だとダメなんでしょうか
このme は自分(?)を指すのではないのでしょうか?
No.2ベストアンサー
- 回答日時:
まだ起きてたので、さっきのアドバイスの延長を実例で詳しく書きます。
新規フォームを作成
Label1とメニュー[mnuTest]を作成
以下のコードを、VBに直接コピペしないで、タイプしてみたら少しはつかめるかな?
~[Meなし]バージョン~
Private Sub mnuTest_Click()
Label1.Visible = Not Label1.Visible
If Label1.Visible Then
mnuTest.Caption = "非表示にする"
Else
mnuTest.Caption = "表示する"
End If
End Sub
~[Meあり]バージョン~
Private Sub mnuTest_Click()
Me.Label1.Visible = Not Me.Label1.Visible
If Me.Label1.Visible Then
Me.mnuTest.Caption = "非表示にする"
Else
Me.mnuTest.Caption = "表示する"
End If
End Sub
~[MeありWith利用]バージョン~
'ここの掲示板はピリオドが見づらいので、メモ帳などにコピペして、ピリオドの位置を確認しながらタイプしてください。
Private Sub mnuTest_Click()
With Me
.Label1.Visible = Not .Label1.Visible
If .Label1.Visible Then
.mnuTest.Caption = "非表示にする"
Else
.mnuTest.Caption = "表示する"
End If
End With
End Sub
No.1
- 回答日時:
Meはこの場合、フォーム自身を返します。
Me.(Meとピリオド)
をモジュール内で書くと、フォームのメソッド、プロパティが出る以外に、フォームにLabel1が存在しているなら、Label1が入力候補として出ます。
※Label1のキャプションを変える方法
Me.Label1.Caption ="hoge"
Label1.Caption ="hoge"
※フォームのキャプションを変える方法
Me.Caption ="hoge"
Caption ="hoge"
Meは省略可能です。
上の二つの例は、フォームモジュールに書いたときだけ有効です。
標準モジュールは、実体を持たないので、Meとやっても指す示す実体を持っていません。
参考までに・・・
クラスでも使用します。派生されたクラスでオブジェクトで、クラスオブジェクト自身が自分のことを指すときも使います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
Microsoft Formsの「個人情報や...
-
クリックイベントなのに、2回ク...
-
Excelにて、ユーザーフォームで...
-
Form_Load と Form_Activate の...
-
VBAでユーザーフォームを再表示...
-
ユーザーフォーム上に現在日時...
-
アクセスのUserFormにはInitial...
-
Access フォームが前面に表示さ...
-
コントロールの存在確認
-
パソコンの画面に合わせてユー...
-
エクセルのチェックボックスの...
-
アニメGifが止まってしまう?
-
(Excel+VBA)ユーザーフォームの...
-
スプレッドシート
-
テキストボックス入力データの...
-
ExcelVBAのユーザーフォームでe...
-
フォームの二重起動の阻止
-
VB.NETでフォームロード中のエ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
Microsoft Formsの「個人情報や...
-
Form_Load と Form_Activate の...
-
VBAでユーザーフォームを再表示...
-
クリックイベントなのに、2回ク...
-
ユーザーフォーム上に現在日時...
-
テキストボックス入力データの...
-
VBAのテキストフォームの折り返...
-
ACCESSのフォーム、開くんです...
-
Hideについて(.NET)
-
ユーザーフォームのテキストボ...
-
エクセルVBAのフォームを最...
-
モーダルフォームとモードレス...
-
EXCEL VBA ユーザーフォームの...
-
フォームのテキストボックスな...
-
コントロールの存在確認
-
パソコンの画面に合わせてユー...
-
フォームウィンドウを最前面に...
-
Accessで、一つのフォーム画面...
おすすめ情報