オデッセイの運営サイト一覧

Excel®️、Accessのマクロ・VBAのスキルを評価する資格VBAエキスパート

企業・教育機関の皆さまへ 試験会場を探す お問い合せ

やってみよう!Excel VBAで業務改善!|VBAとの出会い編

第3話「星くん、VBAに目覚める!」

第3話「星くん、VBAに目覚める!」

登場人物紹介

変数を使ってみよう

「そうか、実際のコードを見た方がわかりやすいかな」

八木くんが、カタカタとVBEにコードを打ち込みます。

Sub Sample() Dim Namae Namae = InputBox("名前を入力してください") MsgBox Namae & "さんようこそ、" & Namae & "さんが入室されました" End Sub

「このコードの2行目にある"Dim"というのは、Dimステートメントといって変数を"宣言"するための命令なんだ。
つまり、ここで"Namae"という変数(メモ)を用意しているんだ。
3行目にある"InputBox"はInputBox関数といって、ユーザーにデータを入力させるためのダイアログボックスを表示する関数だよ。ちょっとこれを実行してみよう」

「あ、何か出たね」

「うん、InputBox関数が表示したダイアログボックスだよ。星、ここにおまえの名前を入力してみろよ」

星くんが名前を入力し、[OK]ボタンをクリックします。

「あ、メッセージが出た!さっき入力した名前が出ているね」

「うん。順を追って説明すると、まず2行目でNamaeという変数を作った。
次に3行目でユーザーの入力した値を変数Namaeに代入した。
そして4行目で変数Namaeに格納されている値、さっきの場合は"星"という文字列をメッセージで表示したんだ」

「これ、さっきのダイアログボックスに"八木"と入力したら、"八木さんようこそ…"って表示されるのかい?」

「うん、そのとおり。変数はただのメモだから、格納した値がその変数の値になるんだ。
もっと長い名前を入力することもできるし、名前以外の文字列を入力することもできるよ」

「これ、変数を使わないとどうなるんだい?」

「その場合、名前の値が必要な箇所でその都度ユーザーに名前を入力してもらわないといけない。
でも一度入力した値を、何度も入力させるなんてナンセンスだろ?
変数に一度格納してしまえば、そのあとプロシージャ内のどこでも、何度でも、その値を利用できるんだ」

星くんがなるほど、という顔をします。

「確かにこれは便利そうだね」

「だろ?このコードをこんなふうに書き換えてみるよ」

シーズン1 「VBAとの出会い」編:エピソード一覧

一覧へ戻る

MENU