【´・ω・`】:それでは下の16行のうち上から4行を見てくれ。
何か特徴がないか?
Cells(5,2)=1
Cells(5,3)=2
Cells(5,4)=3
Cells(5,5)=4
Cells(6,2)=5
Cells(6,3)=6
Cells(6,4)=7
Cells(6,5)=8
Cells(7,2)=9
Cells(7,3)=10
Cells(7,4)=11
Cells(7,5)=12
Cells(8,2)=13
Cells(8,3)=14
Cells(8,4)=15
Cells(8,5)=""
(●`ε´●):行番号は全て5,列番号は初項2,公差1の等差数列
そして右辺は初項1,公差1の等差数列になっている。
【´・ω・`】:うん、だからForループを使うと・・・・
For %x = 2 To 5
Cells(5, %x)=%x -1
Next
・・・・となる。
【´・ω・`】:次の4行の特徴は?
Cells(6,2)=5
Cells(6,3)=6
Cells(6,4)=7
Cells(6,5)=8
(●`ε´●):行番号は全て6,列番号は初項2,公差1の等差数列
そして右辺は初項5,公差1の等差数列になっている。
【´・ω・`】:うん、すると同様にForループを使うと・・・・
For %x = 2 To 5
Cells(6, %x)=%x + 3
Next
・・・・となる。
【´・ω・`】:さらに次の4行の特徴は?
Cells(7,2)=9
Cells(7,3)=10
Cells(7,4)=11
Cells(7,5)=12
(●`ε´●):行番号は全て7,列番号は初項2,公差1の等差数列
そして右辺は初項9,公差1の等差数列になっている。
【´・ω・`】:うん、すると更にForループを使うと・・・・
For %x = 2 To 5
Cells(7, %x)=%x + 7
Next
・・・・となる。
(●`ε´●):なるほど、要領がわかったよ。最後の4行は・・・
Cells(8,2)=13
Cells(8,3)=14
Cells(8,4)=15
Cells(8,5)=""
(●`ε´●):あれ?!最後の行が規則的ではないな。
【´・ω・`】:じょあ、取りあえず最後の行は・・・
Cells(8,5)=16
・・・だと思えば?
(●`ε´●):行番号は全て8,列番号は初項2,公差1の等差数列
そして右辺は初項13,公差1の等差数列だ。
【´・ω・`】:するとどう表せる?
(●`ε´●): For %x = 2 To 5
Cells(8, %x)=%x + 11
Next
【´・ω・`】:正解だ。今まで作った4つのForループを並べるから
もう一度よく見てくれ。
For %x = 2 To 5
Cells(5, %x)=%x -1
Next
For %x = 2 To 5
Cells(6, %x)=%x + 3
Next
For %x = 2 To 5
Cells(7, %x)=%x + 7
Next
For %x = 2 To 5
Cells(8, %x)=%x + 11
Next
【´・ω・`】:何か特徴は?
(●`ε´●):4つとも外枠が同じになっている。
【´・ω・`】:うん。どれも For %x = 2 To 5 と Next だな。
だから、4つのForループはまとめれば・・・
For %x = 2 To 5
Cells(5, %x)=%x -1
Cells(6, %x)=%x + 3
Cells(7, %x)=%x + 7
Cells(8, %x)=%x + 11
Next
(●`ε´●):なるほど。
【´・ω・`】:・・・でこのままでは
Cells(8,5)=16 が生きているのでE8が16になってしまう。
だから最後に Cells(8,5)="" を付け加えてE8をクリアすればいい。
ゆえに最終的には・・・
For %x = 2 To 5
Cells(5, %x)=%x -1
Cells(6, %x)=%x + 3
Cells(7, %x)=%x + 7
Cells(8, %x)=%x + 11
Next
Cells(8,5)=""
・・・が答えとなる。
(●`ε´●):うん、よく見ると・・・まだまだ行けそうだな・・・
(続く)
コメント