エクセルマクロ・VBA達人養成塾小川です。
初心者ネタ。
エクセルVBAの色番号Colorindexをひとととり調べてみる。以下のマクロを実行されたい。
Sub hogehoge() Dim c As Long For c = 0 To 56 Range("C" & c + 1).Value = c Range("D" & c + 1).Interior.ColorIndex = c Next End Sub
こういうのは、「何番から何番まであるのか?」と人に聞くより、自分でいろいろ試してみたほうが早い。
どうせ、最低数は「-1」、「0」、「1」のどれかだろうということで。
まずは、
For c = 0 To 56 Next
の 0 のところを、「-1」にして、
Sub hogehoge() Dim c As Long For c = -1 To 56 Range("C" & c + 2).Value = c Range("D" & c + 2).Interior.ColorIndex = c Next End Sub
とかを作って実行してみる。
それでエラーが出たなら「0」からだろうし、エラーにならなかったなら、「-1」か、もっと少ない値になるだろう、ということ。
「-2」でやってみよう。
Sub hogehoge() Dim c As Long For c = -2 To 56 Range("C" & c + 3).Value = c Range("D" & c + 3).Interior.ColorIndex = c Next End Sub
そうすると、見事にエラーで止まる。
やったー。
「56」の部分も同様。
まずは「10」でも「16」でも、好きな数字を入れて動かしてみて、無事動いたらもっと大きな数字にすればよい。
大きな数字にして実行してみて、途中でエラーで止まったら、それからエクセルシートを見てみれば、何番までは無事に動いたのか分かる。
プログラミングの勉強も理系科目の勉強なので、
「法則を推測する」
↓
「実験の計画を立てる」
↓
「実験結果の予測をする」
↓
「実験する」
↓
「結果を評価する」
という過程を踏むことがとても大切。人に聞く前に、自分で調べられることは調べるようにしたいものだ。