
這是參考下圖中儲存格 F2 所需的公式。
F2顯示結果我想:
我需要:Concat 公式用於將 A 列中的每個變體連接 B 列中的資料。X項目的版本(基於 C2 中的函數),然後連接需要加強X −1 次從 A 列繪製文字字串。
無法找出最好的方法來做到這一點!如果需要引用它們,我也可以建立新函數(例如 F 中的聚合 CONCAT,因為我可以寫一個 IF 語句來尋找「BASE」...)
- 我知道 C2 中的數字:它是 A 列中的文字出現的次數
- 我知道 E2 中的數字:它是行號
- 我知道 D 的結果:如果 A 中的文字第一次出現,則為“Base”,否則為“Variant”
- 我知道 A 列中的文字始終已排序
答案1
適應我的答案到有條件地跨行連接單元格內容,輸入以下公式:
F2
→=IF(AND(A1<>A2,A2<>""), G2, "")
G2
→=IF(A2<>A3, B2, B2 & ", " & G3)
(假設您的資料從第 2 行開始,如問題所示)。如果您不想使用 Column G
,您可以使用任何可用的列(例如Z
或AG
)並相應地更改引用。向下拖曳/填充以覆蓋所有資料。
第二列中的公式(我假設它是 Column ) 從下往上G
建立 Column 中當前事物的逗號分隔的大小清單 。A
更準確地說,單元格 包含行列表 Gn
n及以下。 (現在看一下插圖可能會對您有所幫助。)它說,
- 如果下一行的 Column 值
A
與目前行 (A2<>A3
) 不同,則這是該值的最後一行,因此該行及其下方的列表就是該行的值。 - 否則,這不是該值的最後一行,且該行下方的行包含該行及其下方的列表。因此,我想從該行中獲取值並將其“添加”到下一行的列表中。
然後,「列」中的公式 F
會在該事物的第一行顯示該事物的完整列表,而其他地方則為空白。如果A
該行中的列值為空,也顯示空白 。
G
一旦你開始工作,你可能想隱藏列 。
答案2
使用額外的列..然後隱藏它。 (:
F2 ----> =IF(A2="","",IF(A1=A2,"",G3&", "&B2))
G2 ----> =IF(A2="","",IF(A2=A3,A2&", "&G3,B2))
並向下拖曳...請分享它是否有效(或無效)(: