web-dev-qa-db-ja.com

1つのセルの内容は同じだが他のセルの内容が異なるExcelワークシートの2つの行をマージする

私の問題は、数千エントリのExcelワークシートで、アイテム(ウィジェットaなど)が複数の行に含まれており、異なる属性が異なる行にリストされていることです。タイトル列を除いて、行のコンテンツは複製されません。つまり、値1にウィジェットaのエントリが1行にある場合、2行目にはありません。これにより、2つの行をマージする作業が簡単になります。

ここに私の問題を示す画像。 http://postimg.org/image/n04g4neod/

タイトル列が一致する場合、2つの行のデータをマージして、すべてのデータを1つの行にまとめ、ウィジェットAの1つのエントリ(タイトル、値1、値2、値3など)を結合します。

助けてくれて本当にありがとう!

6
Emily

この種のマージを行うためのきちんとした小さなトリックを次に示します。

  1. テーブルの値セルを選択します(例ではB2:F5)。
  2. 押す F5Special...をクリックします。 Blanksを選択し、[OK]をクリックします。これにより、テーブル内のすべての空白セルが選択されます。
  3. 数式バーの内側をクリックして、以下の数式を貼り付けるか入力します(Enterキーは押さないでください):
    = IF($ A3 = $ A2、C3、IF($ A1 = $ A2、C1、 ""))
    C3はアクティブセルの下のセルであり、(明らかに)C1は上のセルです。テーブルに一致するように式を調整します。
  4. 押す Ctrl+Enter。これにより、選択したすべての空白セルにこの数式が効果的に入力されます。

式は、その下に同じキーワードがあるエントリをチェックし、存在する場合はその値をコピーするだけです。以下に重複が存在しない場合は、以下をチェックします。そこに何も存在しない場合、セルは空白のままです。

最後に、テーブルをコピーし、Paste Special> Valuesをテーブルの上にコピーして戻し、式をクリアして値を保持できます。次に、データリボンにあるRemove Duplicatesツールを使用して、テーブルをクリーンアップできます。

3
Excellll

すべてのウィジェットが少なくとも一緒にグループ化されるように、キーワードでテーブルをソートします...次に、列gが開いている場合は、セルG2に次の配列数式を入力します

=IF(AND(A2:F2=A3:F3),"Duplicate", "Unique")

配列数式として評価するCtr-Shft-Enter。重複をマークします。矛盾する属性を一掃する方法を見つける必要があります

0
Joop