Choose 関数

適用先
Access for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

引数の一覧から値を返します。

構文

Choose(index, choice-1 [, choice-2] ... [, choice-n])

Choose関数には、次の引数があります。

引数 説明
index 必ず指定します。 1 から使用可能な選択肢の数までの値を取得する数値式またはフィールド。
choice 必ず指定します。 可能な選択肢の 1 つを含むバリアント式。

解説

Choose は、 indexの値に基づいて選択肢の一覧から値を返します。 indexが 1 の場合、Chooseはリストの最初の選択肢を返します。 indexが 2 の場合は、2 番目の選択肢が返されます。

Chooseを使用して、可能性の一覧で値を検索できます。 たとえば、 index が 3 に評価され、 choice-1 = "one"、 choice-2 = "two"、 choice-3 = "3" の場合、 Choose は "3" を返します。 この動作は、 index がオプション グループ内の値を表す場合に役立ちます。

Choose は、1 つだけを返す場合でも、リスト内のすべての選択肢を評価します。 この動作のため、不要な副作用を監視します。 たとえば、すべての選択肢で式の一部として MsgBox 関数を使用する場合、1 つの選択肢の値のみが返 Choose 場合でも、選択内容ごとにメッセージ ボックスが表示されます。

Choose関数は、indexが 1 より小さいか、一覧表示されている選択肢の数より大きい場合、Nullを返します。

indexが整数でない場合、Access は評価する前に、最も近い整数に丸めます。

クエリの例

Expression 結果
SELECT Choose(3,"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec") AS Expr1 FROM ProductSales; 値の一覧から 3 番目の値を返します。 結果: "Mar"
SELECT DateofSale, Choose(Month(DateofSale),"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec") AS MonthName FROM ProductSales; DateofSaleの値と、MonthName列の対応する月の名前を返します。 Month(DateofSale)DateofSaleの月番号を返し、 Choose は選択肢の一覧のインデックスとしてその数値を使用します。

VBA の例

次の例は、Visual Basic for Applications (VBA) モジュールでこの関数を使用する方法を示しています。 VBA の操作の詳細については、[検索] の横にあるドロップダウン リストで [ 開発者向けリファレンス ] を選択し、 検索ボックスに 1 つ以上の用語を入力します。

この例では、 Choose 関数を使用して、プロシージャが Ind パラメーターで渡すインデックスの名前を表示します。

Function GetChoice(Ind As Integer)
    GetChoice = Choose(Ind, "Speedy", "United", "Federal")
End Function