今から応用情報技術者試験の勉強をするブログ (NW・SC・基本情報・Iパス、NTTドットコムマスター、エクセルVBAエキスパートもあり)

今から応用情報技術者試験の勉強をするブログ (NW・SC・基本情報・Iパス、NTTドットコムマスター、エクセルVBAエキスパートもあり)

PR

プロフィール

oyo takesi

oyo takesi

カレンダー

バックナンバー

2025年11月
2025年10月
2025年09月
2025年08月
2025年07月

コメント新着

コメントに書き込みはありません。

キーワードサーチ

▼キーワード検索

2019年11月27日
XML
カテゴリ: エクセルVBA
皆さま こんにちは

今回は現在勉強しているエクセルVBA
エキスパートベーシックレベル
について書きます。

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

Excel VBAベーシック VBAエキスパート公式テキスト [ 田中亨 ]
価格:3080円(税込、送料無料) (2019/11/26時点)


---------------------
さて、エクセルVBAエキスパート
ベーシックの試験中で厄介な問題

「マクロを解読し、その結果を答える問題」
についてです。

このタイプの問題対策のために
マクロを正確に読む「技術」を
考えてみます。

ーーーーーーーーーーーーーーーーーーーーーー
VBAの読解について 例1

・例1(繰り返し処理を含むコード)


読んでいけばよいのでしょうか。
1行目 Sub Macro1()
2行目    Dim i As Integer, j As Integer
3行目     For j = 1 To 7 Step 2
4行目          i = i + j
5行目     Next j
6行目   MsgBox i
7行目  End Sub

初心者ながら、考えを整理するために
方針を立てておきたいと思います。

ーーーーーーーーーーーーーーーーーーーーーーー
方針1 :基本的に上から読んで考える
方針2 :「何をどうする」で考える
方針3 :関数やステートメントの意味を考える
ーーーーーーーーーーーーーーーーーーーーーーー

まず方針1『基本的に上から読んで』いきます。

1行目の「Sub Macro1()」
でSubプロシージャを使うことと、マクロの名前が
 「Macro1」であることが分かります。
ただ、この行は形式的なもので
マクロの動作にはあまり関係ありません

2行目ここで 変数 「i」 「j」 を宣言しています。
型の「 Integer」は整数型のようです。
ということは「i」「j」には数値が入るのでしょう。
(文字列は入らない)

方針2の『何をどうする』で考えると
この「変数「i」と「j」をどうするのか」が
このマクロの要点になりそうです。

3行目jについてのコードです。
方針3の『関数やステートメントの意味』を考える
まず、頭に 「For」 があるので何か繰り返すようです。

また、変数「j」の横にイコールがあるので
に何か代入していくようです。
(For文のイコールは代入演算子を表す。)

「1To7」の部分は繰り返しの始めと終わりです。
1~7回繰り返します。
ただしその隣に 「Step 2」 とあるので
「2ずつ増加させる」の意味になります。
つまり繰り返しのたびに
1→3→5→7と2ずつ増加させることになります。

ということはこの3行目は
方針2の『何をどうする』で考えると
「jを2ずつ増加させて繰り返す」という意味になります。

この段階では少しわからないので次を見ていきます。

4行目に行きます。
For文の4行目は処理内容になります。

ここも方針2『何をどうする』で考えます。
「i+j」を行い、変数「i」に代入する ようです。
ここで先ほどの「j」の繰り返し回数
2ずつ増加させて繰り返すことが出てきます。

 iはi+jの合計の値となります。

 jは2ずつ増加させて1~7まで繰り返します。
1回目 =0(iの初期値)+1(jの1回目)
2回目 =1(iの1回目) +3(jの2回目)
3回目 =4(iの2回目) +5(jの3回目)
4回目 =9(iの1回目) +7(jの4回目)
変数i=16となります。

6行目には Msgbox関数 があるので
方針3の「関数の意味」から
Msgboxは値を表示させるの意味なので、
変数iの値(つまり16)を表示させて
完了となります。

7行目のEndSubで完了させます。

このように時間はかかるかもしれませんが
1行ずつ読解していきたいと思います。

以上長くなりましたが、個人的に
活用していきたいと思います。

今回はここまでと致します。
お疲れ様でした。

ーーーーーーーーーーーーーーーーーーーーーー





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2019年11月27日 19時49分27秒
コメント(0) | コメントを書く


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
X

© Rakuten Group, Inc.
X
Mobilize your Site
スマートフォン版を閲覧 | PC版を閲覧
Share by: