今日は「エクセルの神髄」に掲載されている練習問題に挑戦しました。これまで勉強してきた内容の整理と復習になればと思い、挑戦しました。
結果、これまで自分がいかに不要な記述をしてきたかがわかりました(汗)
エクセルの神髄 練習問題↓
http://excel-ubara.com/excelvba9/EXCELVBA601.html
「エクセルの神髄」管理人さんのブログも見させてもらいました。
最近めっきり愚痴っぽくなった自分にぴったりの記事がありました。
VBAの理解に他の人より時間がかかっても、絶対諦めない!納得いくまで勉強を辞めない!
と、思いました。。。
管理人さんのブログです↓
やまちゃんの活動記録
鵜原パソコンソフト研究所
愚痴を言って、ため息ついて
2015.02.03 Tuesday
人生は、自分で選択するものなんです。
自分で選択したのだから、
文句があるなら自分に言うしかない。
たとえ選択の余地が無い天命だったとしても、
それを受け入れたのは自分自身なのですから。
それでも、
愚痴を言いたくなることもあるし、ため息をつくこともある。
さだまさしの「無縁坂」にもあります。
「ため息つけば それで済む 後ろだけは見ちゃだめと」
愚痴を言って、ため息ついて
また、前に進むならそれで良し。
<以下は自身の記述メモ>
練習問題3(二重ループの練習)
Sub 二重ループ練習()
Dim i As Long
Dim ii As Long
For i = 2 To 11
For ii = 2 To 11
Cells(i, ii) = Cells(i, 1) * Cells(1, ii)
Next ii
Next i
End Sub
練習問題4(Ifの練習)
Sub If練習()
Dim i As Long
For i = 2 To 21
Cells(i, 4) = Int(Cells(i, 2) / Cells(i, 3))
Cells(i, 5) = Cells(i, 2) Mod Cells(i, 3)
If Cells(i, 4) < 1 Then
Cells(i, 4) = "×"
End If
Next
End Sub
練習問題5(ElseIfとSelect Caseの練習)
Sub 昨年比()
Dim i As Long
Dim r As Range
For i = 2 To Cells(Rows.Count, 2).End(xlUp).Row '2列目の最終行から上方向に見ていき、値が入っているかを確認し、初めて値が入ったセルを取得 Row=行 P119
Cells(i, 4) = Int(Cells(i, 3) / Cells(i, 2) * 100) '前年比の計算式
Set r = Cells(i, 5)
Select Case Cells(i, 4) '(i,4)が○○だった場合は
Case Is >= 105 '条件
r = "S"
Case Is >= 100 '条件
r = "A"
Case Is >= 95 '条件
r = "B"
Case Is >= 90 '条件
r = "C"
Case Else '条件
r = "D"
End Select
Next
End Sub