<HOME  <お願い事項   <Access2002 TOP   <Access97 TOP   <サイト内検索
 MS-Access2000--VBAの小屋>「エディタ」に慣れる
   1 2 3 4 5



せっかくですので(なにが)、もうちょっといろいろやってみましょうか。
文字そのものをメッセージボックスに出したいときは、ダブルコーテーションで囲みましたけど、じゃあ、テキストボックスの中身をそのまま出したいときはどうすればいいでしょう。

テキストボックスのことをVBA的に表記すると

Forms!フォーム名!テキストボックス名

となります。ほんとは、実在するオブジェクト名でありコントロール名である、ということで、半角のカギカッコで囲んで書いてあげる必要があるんですけど、なんか最近のエディタは賢くて、わかってくれるみたいです。

Forms![フォーム名]![テキストボックス名] 

↑ほんとは、こんなふうにね。

でもって、この命令って、いわばフォームの内側に書き込むって感じになるんですね。このフォーム専用のプライベート命令なんです。
こういう場合は、もっと簡単に書くことができます。

me!テキストボックス名

自分のテキストボックス、っていう感じで見てくれるんでしょうね。



で、試してみましょうか。
そこでEnterキーだ!

ね、出るでしょう。↓

他の言葉とか入れて何回かテストしてみてください。



これだけじゃなんだなぁ・・・。「アホーとはなんだ!」って出したいときは・・・。
これでいいのかな。↓

・・・。

そうか。テキスト1とはなんだ という名前のテキストボックスを探してしまってるんですね。
つなげちゃダメだな・・・それと、「とはなんだ!」はそのまま出してほしいんだから、ダブルコーテーションで囲まないと・・・。

MsgBox Me!テキスト1 & "とはなんだ!"

で、こうなりました。
VBAが理解できるものは外に出して、理解できないものはダブルコーテーションで囲んで、&で結んでやるのです。
出ました?



テキストボックスの中身によって、メッセージを出したり出さなかったりすることもできますね。

それには、Ifというのを使います。

If Then else

もっともBasicっぽい書き方のひとつです。
いろいろ他のコーナーでも解説してますのでダブっちゃうかもしれませんが

if なになにがなになにだったら then
  どうする

else
 それ以外だったらどうする
end if

って書きます。のついたとこは、必ず入力しなくちゃいけないとこです。綴りが間違ってもだめ。どれか欠けてもダメ。
Elseは、それ以外の場合がなければ、必要ないです。


こうすると↑
テキストボックスに、バカって入力したときだけ、メッセージボックスが出ます。


ってすると↑、バカって入力したときだけ、メッセージボックスが出ません
<>ですね。不等号を向き合わせて入力します。半角ですよ。

今はまだメッセージボックスしかやってないですけど、いろんなトコで活躍しそうですよね。
VBAなんて、ifの連続ですよ。これ扱えるようになればもうしめたもんです。