0

これはMSAccessVBAで有効ですか?

iif ([company] = "starbucks", "retail", iif ([item] <> "", "DLookup(....)", ""))

私は上記の作品に似たものを手に入れようとしています。

4

1 に答える 1

2

はい。

IIfJet / ACEが「式が複雑すぎる」と文句を言う前に、最大14個のステートメントをネストできます。IIfVBA機能 に同様の制限はありません。

フォームのコントロールソースでこれを使用しているため、AccessはExpression Service(基本的にはJet / ACEクエリの一部であるかのように扱います)を使用してこれを評価し、14レベルのネスト制限が適用されます。

IIfまた、Jet / ACEをステートメントと呼び、VBAIIf関数と呼んでいることにも注意してください。これらの用語は大まかに使用されることもありますが、正確な意味があります。Jet/ACEのIIfステートメントは真の三項演算子です。結果として、同じ名前のVBA関数よりも一般的に効率的であり、潜在的な副作用の影響を受けません。

于 2011-12-05T16:38:13.267 に答える