Excelでよく使う関数の1つ、「if」。
この「if」を使って、複数条件を指定することができます。
if関数で複数条件を指定することができる
Excelで使う関数。
数式を入力すれば、他のセルにも応用できますし、必ず使っておきたい機能です。
その中でもIF(条件)はSUM(合計)と同じくらい利用できる関数と言えます。
SUMは合計する関数で、かつ、ショートカットキーがある関数。
「Alt」+「Shift」+「=」(Macの場合には「option」+「Shift」+「=」)で合計できます。
一方で、IF(条件)の場合には、ショートカットキーがなく、「=if」と入力すると、関数候補に表示されます。選択して、この続きを入力していくものです。
それだけに、どんな入力ができるか?というのは、知っておくと便利です。
if関数を使って複数条件を設定するには?
IF関数は、「もし〜なら〇〇として、そうでなければ××」といった処理を行います。
これを条件1つでなく、2つ、3つと複数設定することが可能です。
ifを使って条件設定
「もし超人強度が100万パワー以下なら、○をそうでなければ、空白にして」という場合、次のように入力します。
「<=」というのは、「以下」ということ。
空欄にする場合には””とします。文字列の場合、”1”とか”ミート”という表示をします。
- = 等しい
- <= 以下
- >= 以上
- > 超
- < 未満
- <> 一致しない
結果、○がつくのは、キン肉マンを筆頭とするアイドル超人。ほとんどが100万パワー以下で宇宙の強豪超人と戦っていることを改めて実感。
とは言え、超人パワーがすべてでもないことは、将軍様(悪魔将軍)が1,500万パワーしかないのに、驚異的な強さであることからも証明されています。
IF関数とAND関数を使った複数条件指定
IF関数で複数条件を設定する場合、IF関数の中にIF関数を入れ込んでつなげることで式を組み立てることはできます。
ただ、複雑な式になると、わかりにくく、あとで見直したときにも、どんな目的だったのかが、解読できないことも。
そうなると、変更したいときなど大変です。
条件が複数という場合、IF関数とAND関数を使うことで、複数条件をわかりやすく指定することができます。
AND関数は「かつ」を表し、AND(条件1,条件2,…)という使い方をします。
「もし、超人強度が5,000万パワー以上で、かつ、フェニックスチームなら○をつけて」
つまり、「フェニックスチーム」で、かつ「5,000万パワー以上」と2つの条件を満たしていないと、○はつかないということになり、ハードルは上がります。
とはいえ、フェニックスチーム。5人のうち、4人がその条件をクリアしているというすごい陣容ではあります。
最近読み返したそのフェニックスチームとの対戦。やはり面白く、ロビンかっこよすぎ、かつ、泣かせます。
IF関数とOR関数を使った複数条件指定
「または」を意味するOR関数。OR(条件1,条件2,…)と、どれかに当てはまれば、というときに使います。
このOR関数もIF関数と組み合わせて、複数条件を指定することもできます。
=IF(OR(B2=”キン肉マン”,B2=”ソルジャー”),”○”,””)
これで
「キン肉マンチームかソルジャーチームの超人なら○をつけてね」
ということです。
どちらかに該当するなら、○が付くわけですから、フェニックスチーム以外の超人には、○が
つくわけです。
Excelマクロでifを使った条件設定
このIF関数をマクロで書くこともできます。
マクロの基本設定はこちらの記事で。
Excel VBA超入門 マクロを書いてみたい人集合! 仕事ときどきアウトプットがおすすめ | GO for IT 〜 税理士 植村 豪 Official Blog
マクロで書く if関数
まず、通常のIFステートメントは次のように書きます。
1 2 3 4 5 6 7 8 9 10 |
Sub mustle1() '■変数の宣言 Dim i '■条件設定と判定 For i = 2 To 17 If Range("C" & i).Value <= 100 Then Range("D" & i).Value = "〇" End If Next End Sub |
「For〜Next」で繰り返し処理をするという記述。
「i」というのは変数で、でC2セルからC17セルまで、繰り返し処理してねということ。
そしてIF関数に相当する部分には
IF 条件 Then
処理
End if
と書きます。
ExcelマクロでIFとANDを使った複数条件指定
ExcelマクロでIFとANDを使った記述は、次のようになります。
1 2 3 4 5 6 7 8 9 10 |
Sub mustle2() '■変数の宣言 Dim i '■条件設定と判定 For i = 2 To 17 If Range("C" & i).Value >= 5000 And Range("B" & i).Value = "フェニックス" Then Range("D" & i).Value = "〇" End If Next End Sub |
という感じです。条件1と条件2をAndでつなぎます。
ExcelマクロでIFとOrを使った複数条件指定
最後は、ORを使った場合の記述。
1 2 3 4 5 6 7 8 9 10 |
Sub mustle3() '■変数の宣言 Dim i '■条件設定と判定 For i = 2 To 17 If Range("B" & i).Value = "キン肉マン" Or Range("B" & i).Value = "フェニックス" Then Range("D" & i).Value = "〇" End If Next End Sub |
前述のAndの部分をOrに変えれば、OR関数と同じ効果になります。
関数で解決できるならマクロを使う必要もないと思いますが、繰り返し処理が必要で、マクロを使うのであれば、知っておきたい記述。
マクロを記述した場合には、Excelファイルを保存するときの種類は、「Excelマクロ有効ブック」にする必要がありますので、ご注意を。
最後に、超人強度が高い順にご覧いただき、この辺でお別れします。(将軍様あり)
【編集後記】
昨日は、諸事情で午後からお客様訪問。家族には、半日温泉でゆっくりしてもらい、その後合流して食事に。
【昨日の1日1新】
※「1日1新」→詳細はコチラ
スターバックスコーヒー TSUTAYA 瀬戸店
相続税申告・ひとりしごとをサポートします 植村豪税理士事務所
相続や贈与のことでお悩みの方、「決算書の数字が読めない」、「資金繰りを改善したい」、「クラウド会計を使ってみたい」というひとり社長やフリーランスの方のサポートに力を入れています。
サービスメニュー
- 5/27@名古屋『ひとり会社の決算書の見方・使い方入門セミナー』
- 5/30@名古屋『法人メインの税理士のための同族株式入門セミナー 』
- セミナー開催リクエストフォーム
- 相続税申告・贈与税申告
- 個別コンサルティング
- スポット相談
- メールコンサルティング
- 顧問契約(法人)
- 顧問契約(フリーランス・個人)