答案1
如果您沒有 O365,我建議使用 VBA 或 Power Query 解決方案。
但是,如果您有 Excel O365,您可以嘗試以下操作:
- 從您的資料建立一個表格(我的表格名稱是
Table5
;調整公式以符合您的表格名稱。- 這樣做會自動將標題放置在空白列中,其名稱類似於“
ColumnN
哪裡N
是數字”
- 這樣做會自動將標題放置在空白列中,其名稱類似於“
鑑於我的結果從 A22 開始(見下文)
公式:
原始表中唯一日期的排序清單:
A23: =SORT(UNIQUE(FILTERXML("<t><s>" & TEXTJOIN("</s><s>",TRUE,INDEX(Table5,SEQUENCE(ROWS(Table5)),SEQUENCE(,COLUMNS(Table5)/2,1,2))) & "</s></t>","//s")))
公司名單:
B22: =FILTER(Table5[#Headers],ISERR(FIND("Column",Table5[#Headers])))
傳回匹配的值
B23: =LET(x,INDEX(Table5,SEQUENCE(ROWS(Table5)),SEQUENCE(,2,MATCH(B$22,Table5[#Headers],0)-1)),y,XLOOKUP($A23,INDEX(x,0,1),INDEX(x,0,2),""),y)
選擇B23
並向下和橫向填充以填入結果表。
唯一日期公式說明:
INDEX(Table5,SEQUENCE(ROWS(Table5)),SEQUENCE(,COLUMNS(Table5)/2,1,2))
將傳回僅包含奇數列(即日期列)的表
TEXTJOIN("</s><s>",TRUE,the_odd_column_table)
將這些日期列中的所有項目連接成具有指定分隔符號的單一字串
FILTERXML("<t><s>" & the_joined_string & "</s></t>","//s")))
建立一個 XML,然後傳回一個節點數組(這將是原始表中的日期)。
SORT(UNIQUE(the_dates_array))
做顯而易見的事。