これはMSAccessVBAで有効ですか?
iif ([company] = "starbucks", "retail", iif ([item] <> "", "DLookup(....)", ""))
私は上記の作品に似たものを手に入れようとしています。
これはMSAccessVBAで有効ですか?
iif ([company] = "starbucks", "retail", iif ([item] <> "", "DLookup(....)", ""))
私は上記の作品に似たものを手に入れようとしています。
はい。
IIf
Jet / ACEが「式が複雑すぎる」と文句を言う前に、最大14個のステートメントをネストできます。IIf
VBA機能 に同様の制限はありません。
フォームのコントロールソースでこれを使用しているため、AccessはExpression Service(基本的にはJet / ACEクエリの一部であるかのように扱います)を使用してこれを評価し、14レベルのネスト制限が適用されます。
IIf
また、Jet / ACEをステートメントと呼び、VBAIIf
を関数と呼んでいることにも注意してください。これらの用語は大まかに使用されることもありますが、正確な意味があります。Jet/ACEのIIf
ステートメントは真の三項演算子です。結果として、同じ名前のVBA関数よりも一般的に効率的であり、潜在的な副作用の影響を受けません。