今、エクセルのマクロを勉強しています。最近はやっとFor
~nextやDo~Loopのプロシージャを理解しようとしているところまできました。しかし、どこまででどういう処理をしているのか全く理解できません。なので、図を描こうにも描けなくて困っています。このマクロ入門をすべて理解すれば、スロットのゲームを作れるというのに…。カレンダーやスケジュール帳も作れるらしいです。エクセルで。
理解するのに時間がかかったモジュールの中のプロシージャに、こういうのがありました
Sub 累計問題()
Dim トータル As Single
Range("C11").Select
Do While ActiveCell.Value <> ""
トータル= トータル + ActiveCell.Value
ActiveCell.Offset(0, 1).Value = トータル
ActiveCell.Offset(1, 0).Select
Loop
End Sub
|
セルの列 |
B |
C |
D |
|
セルの行 |
|
|
|||
10 |
売上月 |
金額 |
累計 |
|
|
11 |
4月 |
32500 |
|
←ここを |
|
12 |
5月 |
27030 |
|
順番に |
|
13 |
6月 |
26800 |
|
出るように |
|
14 |
7月 |
25700 |
|
すればよい |
|
15 |
8月 |
30200 |
|
|
|
16 |
9月 |
31100 |
|
|
|
17 |
|
|
|
|
まずトータルという宣言。めっちゃつかうやん。なんやねんこれ。どこでどうつこうてるんや状態。トータルにトータルをプラス(+)するっていうのがなかなか想像できなくてイライラ…トータルっていう箱の中にトータルって箱と今選択しているセルをD列に…ややこしい!!
ステートメントのDo while~LoopについてはDo whileの後の式の条件が満たされている間はLoopまでの処理を繰り返すという意味で、つまり、「ActiveCell.Value <> ""」のステートメントは、選択しているセルが空白でない場合、この処理を繰りかえすという意味になります。しかし、いまだに中身のトータルがトータル+選択したセルでトータルを書きトータルするというのが想像できなくてさっぱり理解が出来ません。何してんだ…何言ってんだ自分。
そんなこんなで自分の力でゲームスケジュール帳を作れる日は来るのでしょうか…
コメントをお書きください