<HOME  <お願い事項   <Access2002 TOP   <Access2000 TOP   <サイト内検索
 Access97 VBAの森>ExcelでVBA



(1)

突然ですが、いろいろなネコの名簿を作りたいなと思います。

とりあえず、おなまえと、毛の色と、特長などをまとめてひとつコメント欄を設けて、小さな表にして管理したいんです。
Excelはとても入力しやすく工夫されているし便利な機能があらかじめいっぱいあるんですけど、ここはひとつ、入力画面を作って雰囲気を変えてみようかなと思うんです。

で、もしかしたらおんなじおなまえのネコがいるかもしれないんで、ネコ番号をつけてちゃんと管理できるようにしようと思います。

え、何のためにこんなことするかって?
・・・まあ、いいじゃないですか。細かいことは。仲良くやりましょうよ。


ここでいろいろ挑戦してみようかなと思います。
まず、ネコ番号は、いちいち自分でふるのもめんどくさいし、同じ番号を2回入力しちゃうかもしれないですよね。
ネコが大勢になったら、わけわからなくなります。
なので、自動的に番号が割り振られるように「自動採番」というのに挑戦してみようと思います。

でも、あんまり難しいのはよくわからないんで、1、2、3・・・と順番にふっていくように仕組みを考えていきましょう。

それと、毛の色は、黒、白、茶、ぶち、しま、その他の6種類に分けたいと思ってるので、入力するのではなくて、一覧から色を選べるようにしたいと思います。


では、無計画に始めましょう。

まずは土台となる入力ワークシートの用意です。これは今まで通り、ふつうのExcelの表を作ります。

といって、罫線とかそういうのは後でもいいです。と、こんな感じで単に項目名だけ入力します。
まあ要するに「データの入力をする列と行の場所」だけ明確に定めるわけです。

で、A列にネコ番号、B列におなまえ、C列に毛の色、D列にコメントを入力するようにしました。

まあ今日は練習ですから、適当に作って下さい。お任せします。
でもどんな風に作ったかわかんなくなっちゃった、ってのは「なし」ですよ。適当なファイル名を付けて保存して、ではいよいよ、です。

画面を作りましょう。UserFormなんていう呼び方をします。

ここからの作業は、画面の扱いかたが少々ややこしいんですが、整理しますと、フォームを作る過程では、画面の表示モードが2種類あるんです。
作ってる最中の画面と、実行して表示されている状態です。
多分区別付きにくいと思うんで、できるだけわかりやすくお話していこうと思いますが、どういう時が作成中で、どういう状態を実行時というのか、雰囲気をつかんじゃって下さい。


作り方です。
まず、土台となるフォームを作り、その上にコマンドボタンや入力欄をひとつずつ作っていきます。

[Alt]+[F11]で、VBEのウィンドウを出しましょう。
出ないという方は、メニューバー[ツール]→[マクロ]→[Visual Basic Editor]を選びます。

さて、わたしはまだ、このブックの中には何にも作ってないんで、何にもないです。

メニューバー[挿入]→[ユーザーフォーム]を選びましょう。
なにかしばらく動きがあって、こんな画面になりません?

これが、フォームの作成中の画面です。


で、参考までに、メニューバー[実行]→[SUB/ユーザーフォームの実行]を選ぶと、こんな画面になります。これが実行中の状態、つまり、ネコのなまえや毛の色を入力するためのモードです。
でも、またなんも作ってないので、つるつるですよね。がっかりなさらないで。これからです。

フォームの右上の閉じるボタンをクリックすると、元に戻ると思います。
こうやって仮実行させて、入力の状態とかテストするんです。

違い、お分かりいただけました?
この画面の切り替えに慣れちゃえば、フォーム作りなんてたいしたことないです。
早いとこ慣れちゃいましょう。


元に戻って、画面の中をよく見ると、「ツールボックス」という名前の、ツールボタンの集まりがありますね。探してみて下さい。

これはいわゆる「道具箱」です。
この中に「コマンドボタン」とか「入力枠」とか、いろいろな道具があるので、ここから出して使うのです。
今、多分黒い矢印ボタンがへこんでる状態だと思います。
いや、ほんとにへこんでるわけじゃなくて、そういう表示になってるってことです。

これは「手になにも持ってない状態」です。まあ、ノーマルな状態ですね。



ではさっそく。

まず、入力枠を作りましょうか。最初はネコの名前を入力する枠を作りましょう。
そうですねぇ・・・。10文字分くらい取りますかね。
入力枠のことを一般的にテキストボックスと呼びます。テキストボックスを作るための道具は、abというボタンです。こいつをクリックしましょう。

ボタン、へこみますよね。

適当なところをドラッグして、適当な大きさの四角を作って下さい。
作った後、大きさや位置を変えることはできますから、思い切って大胆に。
大きさを変えるのは、四角点々(ハンドルって言いますね)をドラッグ、位置を動かすときはそれ以外のところをそーっとうまーくドラッグします。

で、ここにネコの名前を入力するって分かってればいいんですけどね、枠だけあっても、わかんないですよね。。。
そこで「おなまえ」と説明書きというか、枠のタイトルみたいなのをつけようと思います。
こういうのを「ラベル」と呼びます。大文字のAのツールボタンが、それです。

テキストボックスの左側にでも、ひとつ作ってみて下さい。要領は同じです。

で、中に文字を入力します。「おなまえ」。

これでちょっと実行してみましょうか?フォーム上のグレーのところをどこかクリックして、つまりテキストボックスやラベルにハンドルがついてない状態にしてから、メニューバー[実行]→[SUB/ユーザーフォームの実行]。キーボードのF5でも動くのかな・・・。

はは。四角枠だけできてますよね。
なんか文字の入力ができそうですけど、これはまだ枠だけ。この枠の中に文字を入力したら、それをSheet1のネコ名簿のB列に代入する・・・みたいな処理を、これから作るわけです。
枠作っただけで、思ったところに値が入ってくれるかというと、世間はそんなに甘くない。がんばりましょう。


ちょっと横道にそれて、今つくったラベルの方ですが、もうちょっと文字の大きさを調節したいとか、思いません?
画面の左側の方を見て下さい。こんな枠がありません?ちょっと見にくいかもしれないですけど、いわゆるプロパティってやつです(属性変更表示)。

マウスでクリックして選んだものの、書式や属性を変更するための画面です。Visual Basicをご存知の方はおなじみ画面ですよね。最近のVBはもうちょっと進んでるのかな・・・。



ええと、いろいろありますけど、だいたい見ればどれがなんだか見当つきますよね。じゃ、ラベルをクリックして、ラベルの属性を変えてみましょう。

まずは・・・フォントの大きさと色かな。

Fontっていうプロパティのところをクリックすると、右側に小さいピリオド3つの妙なボタンが出てきません?ビルドボタンと申しまして、クリックするとフォントに関する細かい設定のできるおなじみのダイアログが出てきます。これはExcelのフォント属性変更のダイアログなので、おなじみですよね。
んじゃ、なんか適当にフォントサイズとか変えて下さい。

まあ、練習ですからハデにいきましょう。皆さんも遠慮なく変更して下さい。
ForeColorというのが前景色、つまりセルとかラベルとかの上に乗っかってる文字の色ってことになりますから、ここを変えると、文字の色が変ることになりますね。パレットと、フォームの中でよく使われているような配色と、両方から永良部湖とができます、げ、何じゃこりゃ。選ぶことができます。

後はラベルの中の真ん中に文字を寄せるとか、いろいろプロパティが用意されてます。いろいろいじってみて下さい。

テキストボックスの方も同様で、書式に関するプロパティがいろいろ用意されてますね。
こちらはラベルと違って、実際に文字を入力したりするのにも使いますから、意味の分からない難しそうなプロパティも並んでます。
まあ、こんな感じだ、というぐらいに見ておいて、おいおい設定していくとしましょうか。テキストボックスは中に文字入力しないと雰囲気わかりにくいですもんね。

・・・なんでテキストボックスの中が真っ白なのか、それは。。。いいですよね。

ときどき保存しながら作業して下さい。保存は保存のツールボタンをクリックすればOK。
せっかく作ったのに途中でぱあになっちゃうと気持ちがへこみますよね。。