2016-08-10 9 views
0

私は何かが単純ではないと確信しています...ここでは簡単で簡単です。Excel - グループは似ていますが、重複する行を表示しない

私の結果で
Excel 
Line ID Name Value 1 Value 2 
1+  001 Bob  123  456 
4+  004 Jim  abc  def 

、私はテキスト値でソートしたいと思います:

Excel 
Line ID Name Value 1 Value 2 
1  001 Bob  123  456 
2  002 Bob  234  567 
3  003 Bob  345  678 
4  004 Jim  abc  def 
5  005 Jim  bcd  efg 
6  006 Jim  cde  fgh 

そして、私はこのような最終結果を探しています:私はこのようになりますスプレッドシートを持っています列(「名前」)を作成し、他の列が異なる情報を持っているかどうかにかかわらず、各重複行を非表示にします。

理想的には、何かをクリックして「Bob」を展開することができます。

私は以前これを見てきたと思いますが、どうやってそれを行うのか分かりません。

思考?

+0

*それぞれの重複行*を隠すと、他の列が異なる情報を持っているかどうか*気にしないので、正しい '名前'列のみを意味します*? – Brian

+0

ブライアン - はい、残りの列には異なる情報があるかもしれませんが、「名前」でグループ分けされていても大丈夫です。 「名前」が重複している場合は、その行全体を非表示にします。 – RogueJD

+0

@ rohrl77のアイデアはどうですか?私はそれが一番簡単だと思う。 – Brian

答えて

3

ピボットテーブルを使用してレイアウトやデータを自由に処理できます。ピボットテーブルを適用し、名前フィールドを行セクションにドラッグします。自動的にグループ化されます。

+0

ピボットテーブルは、あなたが探しているような種類の対話型機能を実現する方法です。 –

0

私の最初の考えは、VBAマクロを書くことです。

ステップ1、データをソートして、キーが連続していることを確認します。つまり、「名前」列でソートします。

ステップ2、データ範囲の行を繰り返し、現在のブロックの開始時刻を記録し、終了時に通知します。その時点でVBAコードの行をプログラムでグループ化できます。

マクロレコーダーはおそらくあなたの友人です。ここでは、各ステップを達成するための優れたスケルトン関数を提供します。

これは、必要なグループ化機能を提供します。

ユニークなリストだけに満足していて、各ユニークな「名前」の最初のエントリを持つテーブルがあり、本当にVBAを掘り下げたくない場合は、最初にユニーク別の列に名前を付けて、元のテーブルを複製するVLOOKUPを実行します。ユニークな名前は、ピボットテーブルを使用して取得することも、高度なデータフィルタ(データリボンを参照)を使用してリストから別の場所にコピーすることもできます。

関連する問題