<HOME <お願い事項 <Access2002 TOP <Access97 TOP <サイト内検索 | ||
MS-Access2000超入門部屋--オプショングループを作ってみる | ||
1 → 2 → 3 → 4 → 5 |
どうしてもVBAコードを書くのはいやだ、マクロでやりたい、という場合は、以下のようになります。
マクロで条件分岐をさせるためには、まず、緑色で丸印つけたツールボタンをクリックします。
と、「条件」という欄が出てきたと思います。
これで、マクロでIf文が使えるようになります。
「条件」欄に [Forms]![フォーム1]![フレーム0]=1
これで、「フォーム1の中のフレーム0のオプションボタン2が選ばれたら」って意味になります。
あ、半角全角、気をつけてくださいよ。
で、右側の「アクション」欄に、具体的にやることを書きます。
アクション 値の代入
アイテム [Forms]![フォーム1]![テキスト8]
式 "ちくわ"
マクロですから・・・フォーム1はMeではないですよね。よそ様のフォーム内のフレームやテキストボックスの扱いをすることになるので、フォーム名から書き込んでいくことになります。だから、こういう処理のときは、マクロだと余分なこといろいろ書かないとならなくなっちゃって、ちっと面倒なんです。
コードの方が楽かなぁって、わたしは思います。
で、同じ条件のもと動かしたいアクションがある場合は、「条件欄」に半角のピリオド三つ打ちます。…って。
これ、ゴミじゃないですよ。ドット3つ打ってあるんです。これがあるとないじゃ大違いですからね。
2行目に、同じく
アクション 値の代入
アイテム [Forms]![フォーム1]![テキスト8].[ForeColor]
式 "16737843"
と、入力します。色を変える処理ですね。
ちょっと枠が狭いですけど、がんばって入力してみましょう。
これを、フレーム0が2のとき、3のときと、書き足して行けばオッケー。
"カルボナーラ"って代入して、テキストボックスの前景色を別の色に変えて、3だったら"波動砲"って代入して、また別の色に変えて・・・。
ピリオド三つを忘れないようにしてくださいね。
こんな感じで、条件分岐とか、フォームの中のテキストボックスとかを参照した処理のときは、マクロだとちょっと書くの大変なんですよ。
んじゃ、このマクロ、名前を付けて保存して閉じましょう。
名前はー今日は練習だしなんでもいいか。いいや、マクロ1で。
で、こんな感じで、「フレーム0の更新後処理」のとこに、今作ったマクロを選んでやれば完了です。
VBAコードでもマクロでも、考え方は同じなんで、作りやすいな、と思うほうで作ってやってください。
んじゃ、この保存しながらフォームは閉じましょうか。
だいたい、フレームのイメージつかんでいただけました?
フレームっていう枠の中で、複数のコントロールをひとつのグループとみなして使うって感じになりますね。
その辺の仕組みを理解していただければ、これってかなりいろんなシチュエーションで応用できると思いますよ。
では・・・もうひとつ新しく、無地のフォームを作ってみましょうか。
フレームの中に置くことができるコントロールは、オプションボタン以外にもいろいろあるんで、その辺のお話もしようかなって思います。
トグルボタンっていうのがあります。
コマンドボタンと似てますけど、こっちは、クリックすると引っ込んで、もっかいクリックするとでっぱる、という、スイッチみたいなボタンなんです。
わりと使いやすいですよ。
これも、「オプション値」っていうプロパティがあるんで、オプションボタンと同じで、フレームの中に入れると、どれかひとつがへっこんで、あとのがでっぱってる、っていう状態を作ることができます。
後は、チェックボックスも、フレームの中で使うことができます。
アンケート調査なんかで、「どれか1個に◎を付けてください」なんてこと、ありますよね。そういう感じの入力の
とき、わりと便利じゃないでしょうか。
各チェックボックスのラベルや、トグルボタンの標題は自由に変えることができるので、より選びやすいように活用してみてください。
プロパティを出して変えてもいいし、無理やりがしがしダブルクリックしてればカーソル出てきますよね。
と、フォームビューに切り替えてみると・・・。
どうでしょう。オプションボタンと変わらないですよね。
後はお好みかな・・・オプションボタンが一番一般的かなぁと思うんですけどね。
んじゃ、このフォーム、なんか適当に名前をつけて保存しましょうか。
「フォーム2」でいいや。