2016-06-30 8 views
1

私はそうのような表している:このセットに基づいて、私は、例えば、それぞれ独自のSKUのプレフィックスの「要約レコードを」一意のテキストに基づいて複数の行のテキストを1つのセルに結合しますか?

Data Set

が必要この例ではPW0007とPW0008)。ここでの例は次のとおり

SKU = PW0007BG-3×6-M、色=ベージュ、サイズ:

Desired Result 念のために、これは読み取ることは困難であり、ここで上記変化出力(G1)の一例です= 3x6、finish =マット、ルック=ウッド、アプリケーション=ウォールまたはフロア| sku = PW0007BK-3x6-M、カラー=ブラック、サイズ= 3x6、仕上げ=マット、ルック=ウッド、用途=壁または床| sku = PW0007RD 4x8-P、カラー=レッド、サイズ= 4x8、仕上げ=ポリッシュ、ルック=ウッド、用途=壁面または床

もう1つのポイントは、SKUフィールドを別々のシート私は簡単にUNIQUE()を実行してPrefix PW0007とPW0008を得ることができます最高のアプローチ。ユニークなSKUプレフィックスごとにバリエーションがあり、それを分けて想像することができません。多分SUMPRODUCTの何か?

私はこれを式で行うことができると思っていますが、私は、私にとってワックスの全体のボールである何らかのスクリプトが必要だと思う傾向があります。

答えて

1

このためのスクリプトは必要ありません。スプレッドシートの式の組み合わせで十分です。同じことを簡単にするために、あなたのデータは列A〜Fにあり、出力は同じシートのG〜Hにあると仮定します。

最初に、固有のプレフィックスのリストを生成します。彼らはSKUの最初の6つの文字であると仮定すると、(G2に配置された)式は

=sort(unique(filter(left(A2:A, 6), len(A2:A)))) 

(ソートは任意であるが、このコンテキストで実行することは理にかなって)であろう。フィルタは空の行を考慮から削除します。

次に、次の列では、ここで改行を使用してセルH2にこの長い形式を使用します。長さにもかかわらず

=join("|", arrayformula("sku=" & filter(A2:A, left(A2:A, 6) = G2) 
    & ",color=" & filter(B2:B, left(A2:A, 6) = G2) 
    & ",size=" & filter(C2:C, left(A2:A, 6) = G2) 
    & ",finish=" & filter(D2:D, left(A2:A, 6) = G2) 
    & ",look=" & filter(E2:E, left(A2:A,6) = G2) 
    & ",application=" & filter(E2:E, left(A2:A,6) = G2) 
)) 

が、それは非常に簡単です:SKU接頭辞によって各列をフィルタリングし、その説明を付加し、その結果を連結します。最後のステップは、そのような結果にすべて参加することです。

H2の式をH列にドラッグする必要があります。

+0

ありがとうございました。ソリューションに含まれる概念を説明し、試してみるためのソリューションを提供してくれた、はっきりした簡潔な答えに感謝します。私はこれを行って、テストして確認した答えを受け入れます。 –

+0

私は "G2"が実際に別のシートに載っているので、これに対していくつかの修正を加えました。それはすごくうまくいく、ありがとう。これに関連するその他の質問がある場合は、ここで引き続き質問するか、別の質問をしてください。 –

+0

2組のデータが異なるシートにある場合、これは機能しますか?たとえば、共有SKUプレフィックスに基づいて、color、size、finishなどの値が設定されます。他のシートでフィルタリングできますか? –

関連する問題