事務仕事をしていると、「もしこの入力が間違っていたら…」と不安で胃が痛くなること、ありませんか?
私はあります。何回見直しても、完了にしていいのか不安です。
今回は、そんな「目視確認による不安と疲れ」を解消するための、プログラミングの基本中の基本、If…Then…Else(イフ・ゼン・エルス)文についてお話しします。
難しそうに見えますが、やっていることは私たちの日常と同じ。「もし雨が降っていたら傘を持つ、そうでなければ持たない」という判断を、やってもらうだけなんです。
If文って何?
If…Then…Else は、日本語にすると「もし(If)~ならば(Then)〇〇する。そうでなければ(Else)××する」という意味です。
例えば、「売上金額が10,000円以上なら『高額』と表示し、それ以外なら『通常』と表示する」というルールをExcelに任せることができます。
一回なら自分で判断すればいいですが、10000件を1分以内でとなると人間には不可能ですよね。でもVBAを使えばできます。
コピペで動く!VBAコード
では、実際にExcelのVBA(マクロ)を書いてみましょう。
まずは一番シンプルな形を紹介します。
【シナリオ】
セル「A1」に入っている数字を見て、10,000以上ならB1セルに「要確認!」と赤字で出す。
Sub CheckSales()
' A1セルの値を変数に入れる
Dim amount As Long
amount = Range("A1").Value
' もし(If) 金額が10,000以上 ならば(Then)
If amount >= 10000 Then
Range("B1").Value = "要確認!" ' B1に文字を入れる
Range("B1").Font.Color = vbRed ' 文字を赤にする
' そうでなければ(Else)
Else
Range("B1").Value = "通常" ' B1に通常と入れる
Range("B1").Font.Color = vbBlack ' 文字を黒にする
End If
' 判断おしまい(End If)
End Sub
これで「心の平和」に繋がる!
人間は、作業が「3つ」重なるとミス率が跳ね上がると言われています。
でも、コンピュータは1万回でも10万回でも同じことをさせても文句を言わず、ルール通りに正確に判定してくれます。
プログラミングが出来るようになれば「私が判断しなきゃ」と抱え込む必要はなくなります。
「もし~なら」というルールさえ決めてしまえば、あとはプログラムが私たちの代わりに完璧なチェックマンになってくれます。
まずはこのコードをコピペして、A1の数字を書き換えて遊んでみてください!
VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を厳選して紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。


コメント