Access Switch関数とIIf関数

レコード値を変換させるときに良くSwitch関数かIIf関数を使用します。

Switch関数は条件式の値が真(True)の場合、交換値と該当しない(False)場合はNull値となります。

Switch(条件式1,交換値1,条件式2,交換値2,条件式3,交換値3,…)


IIf関数も式の値が真(True)の場合と該当しない(False)場合の値も設定できます。

IIf(条件式,真の場合,偽の場合)
複数設定↓↓
IIf(条件式1,真の場合1, IIf(条件式2,真の場合2,IIf(条件式3,真の場合3,IIf( …偽の場合))))


事例として、以下のデータで業態を「スーパー、コンビニ、ドラッグ、ホームセンター」は『複数』、「家電大型専門店」を『単独』と変換していきます。

画像1


まず、Switch関数。
フィールド名は「業態変換」とします。

業態変換: Switch([業態]="スーパー、コンビニ、ドラッグ、ホームセンター","複数",[業態]="家電大型専門店","単独")

画像2

データビューフィールドにすると「スーパー、コンビニ、ドラッグ、ホームセンター」は『複数』、「家電大型専門店」を『単独』と出ました。

画像3

次にIIf関数。
Falseの場合はNull値(””)となるようにしています。

業態変換: IIf([業態]="スーパー、コンビニ、ドラッグ、ホームセンター","複数",IIf([業態]="家電大型専門店","単独",""))

画像4

Switch関数と同じようにデータビューフィールドにすると「スーパー、コンビニ、ドラッグ、ホームセンター」は『複数』、「家電大型専門店」を『単独』と出ました。

画像3


複数設定の場合、どちらの設定でも同じ結果が出せるのですが、IIf関数の場合は複雑になる(カッコが多くなる)ので、Switch関数のほうがおすすめです。


参考:Microsoft サポート
https://support.microsoft.com/ja-jp/

引用データ:経済産業省 METI POS小売販売額指標[ミクロ] 商品分類表品目例
https://www.meti.go.jp/statistics/bigdata-statistics/bigdata_pj_2019/pos_gfk_intage.html



いいなと思ったら応援しよう!

この記事が参加している募集