条件分岐のさせ方

今回はあえてエクセルシート上で使うわかりやすい事例で説明します。「練習」シートのセルA1の値が1の場合はセルB1に「〇」が入り、それ以外の場合は「×」が入ります。

初心者でもわかるExcelマクロ入門! Ifを使ったマクロの使い方をマスター

マクロは次のように書きます。

Sheets.("練習").select
  If Range("A1") = 1 Then
     Range("B1") = " 〇 "
Else
     Range("B1") = " × "
  End If
End Sub

完成させて動かしてみよう

「条件分岐」という名前を付け、マクロを書きましょう。

初心者でもわかるExcelマクロ入門! Ifを使ったマクロの使い方をマスター

ボタンにマクロを登録し、保存して押してみてください。「練習」シートのセルA1の値に応じて、セルB1に〇か×が出れば成功です!

エラーが出たらチェック! よくある間違い

1 RangeやThen、Elseの綴りが間違っている
2 セルや〇、×が" "(ダブルクォーテーション)で囲まれていない
3 Ifの後に条件が書かれていない
4 End Ifが抜けている

今後、本連載でIfを使った実践的なマクロの使い方を紹介していきます。

(本稿は、寺澤伸洋著『4時間のエクセル仕事は20秒で終わる』を抜粋、再構成したものです)

寺澤伸洋(てらさわ・のぶひろ)

初心者でもわかるExcelマクロ入門! Ifを使ったマクロの使い方をマスター

1976年、大阪府生まれ。灘高校、東京大学経済学部卒業後、日系メーカーで17年間勤務。経理や営業、マーケティング、経営企画などに携わり、独学で覚えたエクセルマクロを用いて様々な分析や業務改革を行う。2017年、GAFAの日本法人のうちの1社へシニアマネージャー(部長)として転職。これまでエクセルマクロを用いた業務改善などで数多くの社内表彰を受けている。手作業では不可能なほど大量のデータを、短時間で分析しやすく加工したことが評価され、社内エクセルマクロ講習会の講師として延べ200人以上に講座を実施。エクセルマクロについて1から10まで教える詰め込み型の学習ではなく、仕事に必要な部分だけを効率的に学べる講座として満足度98%の高い評価を受けている。