入社1年目の情シス女子|Excel VBAに初挑戦
早紀(@saki_program)です。
今年新卒で情報システム部に配属されました。
まだまだできる仕事は少ないので、勤務時間中に自習する時間を与えてもらってます。
そのうちマクロ組んでもらうことも出てくるから、今のうちにしっかり勉強しといてねと言われ、Excel VBAを学習してます。
マクロ記録という機能があることは知ってました。ただし、マクロの自動記録ではできないこともあるそうで。
1. 繰り返し処理や条件分岐ができない
2. ユーザーと対話できない
ではこの対話形式のものを一つ作ってみようと思い、
未記入の箇所があれば注意メッセージを出力するもの
私が初めて自作したものになります。
※先輩に少しアドバイスもらいましたが(笑)
記入漏れの場合にメッセージ出力
こちらは受験者の試験の得点表です。一部の受験者の得点の記載が漏れている状態で、合否判定のボタンを押すとエラーメッセージが出力し、処理が中断されるものです。
Sub 合否判定()
Dim row As Long '行を示す変数
' C2からC11のセルで、未記入("")がないかチェック。
' あったら"セルが未記入です"とMagBoxで表示する
For row = 2 To 11
If Cells(row, 3) = "" Then
MsgBox "C" & row & "セルが未記入です" & vbCrLf & "処理を中断します"
Exit Sub
End If
Next row
' C2からC11のセルの値が70以上ならD列のセルに"合格"、そうでないならD列のセルに"不合格"
For row = 2 To 11
If Cells(row, 3) >= 70 Then
Cells(row, 4) = "合格"
Else
Cells(row, 4) = "不合格"
End If
Next row
End Sub
初めてなら、これでいいんじゃない。良い体験になったね。と言われました。
私、過去にRubyの教科書でプログラミングの勉強したことあって、今回も勉強中に、また同じ疑問が湧いてきたんです。教材で勉強したところで、これ作りたいと思っても、作れるようになりませんよね・・・。
とりあえず基礎だけ身につけておけば、いざ作りたいものができたときに、検索しまくれば、なんとか作れるようになるものなのでしょうか?
まだその作りたいもののイメージも湧かないな。私、次何したらこれより先に進めるのでしょうか?
違う教材で学習する?それとも、これはできないのかなとイメージを膨らませる努力をすることですか?