0

データセットが次のように見えると仮定します

Country Region  Product
UK  North   fdhlw46
UK  North   fdhlw47
UK  North   fdhlw48
UK  North   fdhlw49
UK  North   fdhlw50
UK  South   fdhlw51
UK  South   fdhlw52
UK  South   fdhlw53
UK  South   fdhlw54
UK  South   fdhlw55
UK  South   fdhlw56
UK  South   fdhlw57
UK  West    fdhlw58
UK  West    fdhlw59
UK  West    fdhlw60
UK  London  fdhlw61
UK  London  fdhlw62
USA New York    fdhlw63
USA New York    fdhlw64
USA New York    fdhlw65
USA New York    fdhlw66
USA Chicago fdhlw67
USA Chicago fdhlw68
USA Chicago fdhlw69
USA Chicago fdhlw70
USA LA  fdhlw71
USA LA  fdhlw72
USA LA  fdhlw73
USA LA  fdhlw74
USA LA  fdhlw75

ユーザーが国を選択し、次に地域に絞り込み、最終的に製品に絞り込む、カスケードドロップダウン/ピックリストをExcelで取得するにはどうすればよいですか?

これまでのところ、「国」という範囲しかありません。これを「データ - 検証 - ソース: = 国」にすることができますが、これは最初の値のみを提供し、重複を削除しません

4

3 に答える 3

0

範囲を選択し、[データ] -> [フィルター] -> [オートフィルター] を選択します。それはあなたが探しているものを達成していますか?

于 2009-03-24T11:04:20.440 に答える
0

データ検証でルックアップ範囲を直接定義するのではなく、INDIRECT 関数を使用してセルの値をルックアップしたいと思います。このページを見てください。かなりよく説明されています。

ただし、このような複数のカスケード検証には、独自の問題があることに注意してください。主に、2 番目 (または 3 番目など) の選択を行い、最初の選択に戻って編集すると、選択が無効になった可能性があることを示す自動フラグはありません。たとえば、次のような場合:

タイプ詳細
フルーツアップル

...そして最初の列を変更します:

タイプ詳細
ベジタブルアップル

...では、問題が発生している可能性があります。このような不一致を見つけることは非常に困難であるか、強調表示/修正するコードが必要になる場合があります。DDoE ブログでは、条件付き書式を使用してこのようなエラーを強調表示する 1 つの方法を紹介していますが、これは非常に計算量が多く、スケーリングがうまくいきません。

この性質の複数のルックアップは、条件付き書式を使用しなくても、自由に使用するとワークブックを台無しにする可能性があることに注意してください。

全体として、データ入力が厳密に制御されている小さなプロジェクトでは、これはドロップダウン リストをカスケードする柔軟な方法ですが、ユーザーをほとんど制御できない場合、または収集されたデータが数百行を超える場合は、.おそらく、VBA を使用して検証 (!) を検証するか、完全に独り占めしてユーザーフォームからの入力を強制することを検討することをお勧めします。これは、断然最良のオプションです。

編集:ワークブックの例

再編集: データをそのままにしておく必要がある場合は、検証で使用される名前付き範囲を作成する高度なフィルターが必要になります。ただし、このレベルの複雑さでは、データ入力用のフォームを使用するだけの方がよいでしょう。

于 2009-03-24T11:07:35.707 に答える