メインコンテンツへスキップ

Excel CHOOSE function

作者: サン 最終更新日:2019年06月21日

doc選択機能1

説明

構文と引数

使用法と例


説明

  CHOOSE 関数は、指定されたインデックス番号に基づいて、値のリスト引数から値を返します。 例えば、 CHOOSE(3,”Apple”,”Peach”,”Orange”) Orangeを返します。インデックス番号は3で、Orangeは関数のインデックス番号に続くXNUMX番目の値です。

構文と引数

数式の構文

CHOOSE(index_num, value1, [value2], …)

Arguments

  • Index_num: 必須。 1〜254の数値から、どの引数値が選択されるかを間接的に示します。 index_numが1〜254の範囲外の場合、 CHOOSE を返します #VALUE! エラー値。 index_numがXNUMX進値の場合、数式が使用される前に整数に切り捨てられます。
  • Value1: 必須。 選択できる数式の最初の値。
  • Value2: オプション。 選択する254番目から最大XNUMX番目の値。

Value1, value2…は、数値、テキスト、数式、セル参照、または定義された名前にすることができます。

戻り値

  CHOOSE 関数は、指定された位置に基づいてリストから値を返します。

使用法と例

このパートでは、の使用法を説明するために、いくつかの簡単ですが代表的な例をリストします。 CHOOSE 機能。

Ex1-基本的な使用法:使用 CHOOSE リスト引数から値を選択するための関数のみ

式1:

=CHOOSE(3,"a","b","c","d")

戻り値:c、これは、のindex_numの3の後のXNUMX番目の引数です。 CHOOSE 機能。

注:テキストの場合は、値を二重引用符で囲みます。

式2:

=CHOOSE(2,A1,A2,A3,A4)

戻り値:ケイト、A2の値。 index_numは2であり、A2はのXNUMX番目の値であるため CHOOSE 機能。

式3:

=CHOOSE(4,8,9,7,6)

戻り値:6、関数の4番目のリスト引数。
doc選択機能2


例2–複数の条件に基づいて異なる結果を返す

以下のスクリーンショットに示すように、条件に基づいてラベルを付ける必要がある各製品の偏差のリストがあるとします。
doc選択機能3

通常はIF関数で処理できますが、ここではその使い方を紹介します。 CHOOSE この問題を簡単に解決する機能

式:

=CHOOSE((B7>0)+(B7>1)+(B7>5),"Top","Middle","Bottom")

説明:

(B7>0)+(B7>1)+(B7>5): index_num、B7は2であり、0と1より大きく、5より小さいため、中間結果が得られます。

=CHOOSE(True+Ture+False,"Top","Middle","Bottom")

ご存知のとおり、True = 1、False = 0であるため、式は次のように表示できます。

=CHOOSE(1+1+0,"Top","Middle","Bottom")

その後

=CHOOSE(2,"Top","Middle","Bottom")

結果:ミドル
doc選択機能4


例3–条件に基づいて異なる計算結果を返す

以下のスクリーンショットに示すように、金額と価格に基づいて各製品のリベートを計算する必要があるとします。
doc選択機能5

式:

=CHOOSE((B8>0)+(B8>100)+(B8>200)+(B8>300),B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)

説明:

(B8>0)+(B8>100)+(B8>200)+(B8>300): index_number、B8は102であり、100より大きく201より小さいため、この部分では、次のような結果が返されます。

=CHOOSE(true+true+false+false,B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)

=CHOOSE(1+1+0+0,B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)

その後

=CHOOSE(2,B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5)

B8*C8*0.1,B8*C8*0.2,B8*C8*0.3,B8*C8*0.5: 選択する値、リベートは価格*金額*リベートパーセントに等しい。ここではindex_numが2であるため、B8 * C8 * 0.2を選択します。

戻り値:102 * 2 * 0.2 = 40.8
doc選択機能6


例4–リストからランダムに選択

Excelでは、特定のリストからランダムに値を選択する必要がある場合があります。 CHOOSE 関数はこの仕事を解決することができます。

リストからランダムにXNUMXつの値を選択します。

式:

=CHOOSE(RANDBETWEEN(1,5),$D$2,$D$3,$D$4,$D$5,$D$6)

説明:

RANDBETWEEN(1,5): index_num、1から5までの数値をランダムに取得します

$D$2,$D$3,$D$4,$D$5,$D$6: 選択する値のリスト
doc選択機能7


Ex5 –組み合わせる CHOOSE および VLOOKUP 左の列に値を返す関数

通常、VLOOKUP関数を使用します =VLOOKUP (value, table, col_index, [range_lookup]) テーブル範囲から指定された値に基づいて値を返します。 しかし、 VLOOKUP 関数の場合、以下のスクリーンショットに示すように、リターン列がルックアップ列の左側にあるときにエラー値を返します。
doc選択機能8

この場合、 CHOOSE VLOOKUP関数を使用して問題を解決します。

式:

=VLOOKUP(E1,CHOOSE({1,2},B1:B7,A1:A7),2,FALSE)

説明:

CHOOSE({1,2},B1:B7,A1:A7): VLOOKUP関数のtable_range引数として。 {1,2}は、VLOOKUP関数のcol_num引数に基づいてindex_num引数として1または2を表示することを意味します。 ここで、VLOOKUP関数のcol_numは2なので、 CHOOSE 関数は次のように表示されます CHOOSE(2, B1:B7,A1:A7)、A1:A7から値を選択することを意味します。
doc選択機能9


Ex6 –指定された日付に基づいて平日または月を返します

CHOOSE 関数では、指定された日付に基づいて相対的な平日と月を返すこともできます。

フォーミュラ1: 平日を日付で返す

=CHOOSE(WEEKDAY(),"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday")

説明:

WEEKDAY(): index_num引数。指定された日付の平日番号を取得するには、たとえば、WEEKDAY(A5)は6を返し、index_num引数は6です。

"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday": 値リストの引数。平日番号「1」は「日曜日」を示すため、「日曜日」で始まります。

フォーミュラ2: 日付で月を返す

=CHOOSE(MONTH(),"Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec")

説明:

MONTH(): index_num引数。指定された日付から月番号を取得します。たとえば、MONTH(A5)は3を返します。
doc選択機能10


Ex7 –今日に基づいて次の就業日/週末に戻る

日常業務では、今日に基づいて次の就業日または週末を計算することをお勧めします。 ここに CHOOSE 機能もあなたに有利になります。

たとえば、今日は12年20月2018日木曜日ですが、次の就業日と週末を取得する必要があります。

フォーミュラ1: 今日の日付を取得します

=TODAY()

結果:12 / 20 / 2018

フォーミュラ2: 今日の平日番号を取得します

=WEEKDAY(TODAY())

結果:5(今日は12年20月2018日です)

以下のスクリーンショットのような平日の番号リストを示します。
doc選択機能10

フォーミュラ3: 次の就業日を取得します

=TODAY()+CHOOSE(WEEKDAY(TODAY()),1,1,1,1,1,3,2)

説明:

Today(): 現在の日付を返す

WEEKDAY(TODAY()): のindex_num引数 CHOOSE 関数、今日の平日番号を取得します。たとえば、日曜日は1、月曜日は2…

1,1,1,1,1,3,2: の値リスト引数 CHOOSE 関数。 たとえば、weekday(today())が1(Sunday)を返す場合、値のリストから1を選択すると、数式全体が= Today()+ 1に変わります。これは、次の月曜日に戻るために1日を追加することを意味します。 weekday(today())が6(Friday)を返す場合、金曜日は次の月曜日から3日離れているため、値のリストから3を選択します。

結果(今日は12年20月2018日です):

=12/20/2018+CHOOSE(5,1,1,1,1,1,3,2)

= 12/20/2018 + 1

= 12/21/2018

フォーミュラ4: 次の週末の日を取得します

=TODAY()+CHOOSE(WEEKDAY(TODAY()),6,5,4,3,2,1,1)

説明:

6,5,4,3,2,1,1: の値リスト引数 CHOOSE 関数。 たとえば、weekday(today())が1(Sunday)を返す場合、値のリストから6を選択すると、数式全体が= Today()+ 6に変わります。これは、6日を追加して、次の土曜日を返すことを意味します。

結果:

=12/20/2018+CHOOSE(5,6,5,4,3,2,1,1)

= 12/20/2018 + 2

= 12/22/2018
doc選択機能10


サンプルファイル
ドキュメントサンプルファイル


最高のオフィス生産性ツール

Kutools forExcel-群衆から目立つのに役立ちます

🤖 Kutools AI アシスタント: 以下に基づいてデータ分析に革命をもたらします。 インテリジェントな実行   |  コードを生成  |  カスタム数式の作成  |  データを分析してグラフを生成する  |  Kutools関数を呼び出す...
人気の機能: 重複を検索、強調表示、または識別する  |  空白行を削除する  |  データを失わずに列またはセルを結合する  |  数式なしのラウンド ...
スーパーVルックアップ: 複数の基準  |  複数の値  |  複数のシートにわたって  |  ファジールックアップ...
上級ドロップダウンリスト: 簡単なドロップダウンリスト  |  依存関係のドロップダウン リスト  |  複数選択のドロップダウンリスト...
列マネージャー: 特定の数の列を追加する  |  列の移動  |  Toggle 非表示列の表示ステータス  列を比較する 同じセルと異なるセルを選択する ...
注目の機能: グリッドフォーカス  |  デザインビュー  |  ビッグフォーミュラバー  |  ワークブックとシートマネージャー | リソースライブラリー (自動テキスト)  |  日付ピッカー  |  ワークシートを組み合わせる  |  セルの暗号化/復号化  |  リストごとにメールを送信する  |  スーパーフィルター  |  特殊フィルター (太字/斜体/取り消し線をフィルター...) ...
上位 15 のツールセット12 テキスト ツール (テキストを追加, 文字を削除する ...)  |  50+ チャート 種類 (ガントチャート ...)  |  40+ 実用的 (誕生日に基づいて年齢を計算する ...)  |  19 挿入 ツール (QRコードを挿入, パスから画像を挿入 ...)  |  12 変換 ツール (数字から言葉へ, 通貨の換算 ...)  |  7 マージ&スプリット ツール (高度な結合行, Excelのセルを分割する ...)  |  ... もっと

Kutools for Excelは300以上の機能を誇り、 必要なものをワンクリックで手に入れることができます...

説明


Officeタブ-MicrosoftOffice(Excelを含む)でタブ付きの読み取りと編集を有効にする

  • 数十の開いているドキュメントを切り替えるのにXNUMX秒!
  • マウスの手に別れを告げて、毎日何百ものマウスクリックを減らしてください。
  • 複数のドキュメントを表示および編集する際の生産性が 50% 向上します。
  • Chrome、Edge、Firefox と同様に、効率的なタブを Office (Excel を含む) にもたらします。
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations