商品をn
含むカテゴリを取得しました。m
このリストはソートされていません。たとえば、次のようになります。
これが私がこのリストで基本的にやりたいことです:
ドロップダウン:最初の列の各一意の値のリストを動的に保存するデータ検証(=まだ存在しないためCategory_5を選択できません)。
ドロップダウン:最初のドロップダウンで選択したカテゴリに基づいて、すべての製品のリストを提供します。
これに対する非VBAソリューションはありますか?
商品をn
含むカテゴリを取得しました。m
このリストはソートされていません。たとえば、次のようになります。
これが私がこのリストで基本的にやりたいことです:
ドロップダウン:最初の列の各一意の値のリストを動的に保存するデータ検証(=まだ存在しないためCategory_5を選択できません)。
ドロップダウン:最初のドロップダウンで選択したカテゴリに基づいて、すべての製品のリストを提供します。
これに対する非VBAソリューションはありますか?
スプレッドシートレイアウトの例:
A2:A13
-カテゴリリスト、アイテムは一意ではありません B2:B13
- 製品一覧 Cell D2
ダウン-ドロップダウンリスト1ソース、一意のアイテム、動的 Cell F2
down-ドロップダウンリスト2項目の増分数1..(数式の計算が少ない) Cell G2
ダウン-ドロップダウンリスト2ソース、動的 Cell I2
-ドロップダウンセル1 Cell J2
-ドロップダウンセル2セル:D2
配列数式(Ctrl---数式ウィンドウから入力し、カールした角かっこはユーザーではなくExcelによって挿入されます)、下向きにコピーされます: ShiftEnter
{=INDEX($A$2:$A$13;MATCH(0;COUNTIF($D$1:D1;$A$2:$A$13);0))}
カテゴリの一意のリストを提供します。
セルG2
:配列数式、前のセクションの指示に従ってください:
{=INDEX($B:$B;SMALL(IF($A$2:$A$13=$I$2;ROW($A$2:$A$13);"");$F2))}
セルで選択されたカテゴリの製品のリストを表示しますI2
。
リストはソートされていません。最初のリストをカテゴリと製品でソートすることをお勧めします。エラー処理なし:数式は句
で更新する必要があります。IF ISERROR
ExcelでVBAなしで機能させるには、列2のデータ検証の有効なエントリの範囲をリセットする方法が必要です。ソースはリストまたは範囲のみであるため、それを変更するために何かをコーディングする必要があります。関連する列1の値が変更されたときの情報。
VBAルートを使用したくない場合、これらの種類のアクティビティは、Access(またはInfoPath)などのデータベースのニーズに適したものです。