色々なIF文 個人的まとめ

 IF文の違いをまとめてみた

世の中のありとあらゆるプログラミング言語や関数で使われるIF文
人類は条件分けが大好きなんだなと感じます。

Excel

言わずもがな世界最強のソフトウェア(と個人的に思っている)
IF文なくしてExcelなし。とまではいかないが Top 10 には入る頻度の関数だと思う。

記述式

IF(条件,条件に合うならコッチ,条件に合わないならコッチ)​

注意点

  • 特になし
  • ダブルクォーテーションの使い方は慣れる必要があるかもしれない
  • 複数条件は If 文の中にIf 文を入れ込む(コレが重なっていくとものすごく読みづらい)

VBA

Excel を使うのであればVBAは使えた方が幅が広がるのでオススメです。
そして IF分は必須になると思います。

記述式

If 条件式 Then
    処理1
Else
    処理2
End If

注意点

  • 上述の改行の通りに記述する
  • 頭が大文字
  • IF 条件式 Then だけ一行に書く
  • 諸々ある中でVBAが一番クセが強い感じを受ける。
  • 複数条件は ElseIf を使う ※ElseIf で一単語 大文字小文字区別する

複数条件

If 条件式1 Then
    条件式1を満たした場合の処理
ElseIf 条件式2 Then
    条件式2を満たした場合の処理
Else
    条件式1と条件式2を満たさなかった場合の処理
End If

Power Query(M言語)

Excel や Power BI でちょっとした ETLをする時には重宝する Power Query。
カスタム列での使用頻度は高い。

記述式

if 条件​

then 条件に合うならコッチ​

else 条件に合わないならコッチ

注意点

  • 小文字で記述すること
  • end は不要

Fortran

昔々研究室のシュミレーションで使って以来使ってないが、確かにIF分はよく使った。
たしか当時Fortranだと上手いこと処理ができなかったので、卒論の途中残り2ヶ月でC+を勉強してそっちでシュミレーションをやり直したのは当時の自分を褒めてあげたい。

記述式

if (条件) then
  条件が真の場合の処理
else
  条件が偽の場合の処理
end if

注意点

  • VBAに似ている
  • end if が必要
  • 複数条件は else if を使う

複数条件

if (条件 1) then
  条件 1 が真の場合の処理
else if (条件 2) then
  条件 1 が偽で条件 2 が真の場合の処理
else if (条件 n) then
  条件 1 から条件 n-1 が偽で条件 n が真の場合の処理
else
  条件 1 から条件 n がすべて偽の場合の処理
end if

C+

Fortranと同じ頃に使ったきり全然使っていないが、IF文にはお世話になりました。

記述式

if( 条件 ){
    命令1 (複数の命令でも良い)
}else{
    命令2 (複数の命令でも良い)
}

注意点

  • どんな注意点があったかも忘れてしまった
  • 複数条件は else if で記述する

複数条件

if( 条件1 ){
    命令1 (複数の命令でも良い)
}else if( 条件2 ){
    命令2 (複数の命令でも良い)
}else if( 条件3 ){
    命令3 (複数の命令でも良い)
}else if( 条件n-1 ){
    命令n-1 (複数の命令でも良い)
}else{
    命令n  (複数の命令でも良い)
}

DAX関数

Power BI や Power Pivot で使う頻度がそこそこ高い(人は条件分けが大好き)
DAX関数の中では一番と言っていいほど簡単にかけるのもある意味魅力的。

記述式

if(条件,条件に合うならコッチ,条件に合わないならコッチ)​

注意点

  • 基本Excelと同じ
  • 大文字 IF でも 小文字 if でもどちらでも良い
  • 複数条件はExcel同様 Ifの中にIf を入れる

Tableau

BI Tool としては個人的にExcel か Tableau が一二を争う。見栄えと簡単さからはTableauが一位。Tableauの中でIF文を使用することはあまり推奨されないが、ちょっとした処理をしたい時には便利なのでたまにIF文を使う。

記述式

if 条件​

then 条件に合うならコッチ​

else 条件に合わないならコッチ​

end

注意点

  • 大文字 IF でも 小文字 if でもどちらでも良い
  • end は必要(endif ではない)
  • 複数条件は elseif で記述する ※ elseif で一単語

Alteryx

最近はETLをするのに一番使っている。その売りは何と言っても処理が軽いことと分かりやすいUI。Power Query では限界を感じることもAlteryxであれば軽々。実はETLは前処理として機能があるだけで、本領はMachine Learningに力を入れている。

記述式

if 条件​

then 条件に合うならコッチ​

else 条件に合わないならコッチ​

endif​

注意点

  • ifでもIFでも良い​
  • endif が必要(endではない)​
  • IIF は個人的にあまり好きじゃないので使いません
  • 複数条件は elseif で記述する ※ elseif で一単語

コメント