所以我想要做的是采用如下格式的列:
| 柱子 |
|---|
| [文本] |
| $***** |
| 0-10% |
| >5 |
| 文本 |
| $***** |
| 10-20% |
| 3 |
| 文本 |
| $***** |
并撰寫一個公式,以在每次有空格時將資料分成一個新列(列以空格結尾),如下所示:
| [文本] | 文本 | 文本 |
| $***** | $******* | $****** |
| 0-10% | 10-20% | |
| >5 | 3 |
請注意,第一個條目可以是括號括起來的字串,也可以不是,第二個條目是一個數字,第三個條目是該格式的字串或空白,第四個條目是一個數字或“> 5”的字串。大多陣列都有所有 4 個條目,但有些組只有前兩個。
當所有組的長度相同時,我已經建立了一個可以正常作業的公式,但是我需要對其進行調整,以便下一列在空格之后開始,而不是每次都在第 4 個單元格開始,否則一切都開始奇怪。如果有人知道如何自動將空單元格添加到“短”組中,那也可以解決問題。
=Transpose(ArrayFormula(IFERROR(vlookup((TRANSPOSE(ROW(INDIRECT("a1:a"&ROUNDUP(COUNTA($B:$B)/6)))-1)*6 ROW(INDIRECT("b1:b"&6)),{ROW($B:$B),$B:$B},2,))))
感謝您嘗試提供幫助!
uj5u.com熱心網友回復:
你可以試試:
=ArrayFormula(TRANSPOSE(SPLIT(TRANSPOSE(SPLIT(TEXTJOIN("@",1,IF(LEN(A1:INDEX(A:A,MAX(ROW(A:A)*(LEN(A:A)>0)),1)),A1:INDEX(A:A,MAX(ROW(A:A)*(LEN(A:A)>0)),1),"#")),"#")),"@")))

uj5u.com熱心網友回復:
利用:
=INDEX(SUBSTITUTE(TRANSPOSE(SPLIT(FLATTEN(QUERY(QUERY(QUERY({"", 0, 0;
SUBSTITUTE(INDIRECT("A"&ROW(A1)&":A"&MATCH(9, 1/(A:A<>""))), " ", CHAR(13)),
COUNTIFS(INDIRECT("A"&ROW(A1)&":A"&MATCH(9, 1/(A:A<>""))), "",
SEQUENCE(MATCH(9, 1/(A:A<>""))), "<="&SEQUENCE(MATCH(9, 1/(A:A<>"")))),
SEQUENCE(MATCH(9, 1/(A:A<>"")))},
"select max(Col1) group by Col3 pivot Col2"),
"offset 1", ),,9^9)), " ")), CHAR(13), " "))

uj5u.com熱心網友回復:
嘗試:
=INDEX(TRANSPOSE(SPLIT(TRIM(FLATTEN(SPLIT(QUERY(
IF(INDIRECT("A1:A"&MATCH(9, 1/(A:A<>"")))="", "?",
IF(A:A="",,"?"&A:A)),,9^9), "?"))), "?")))

uj5u.com熱心網友回復:
這是使用正則運算式的另一種解決方案。
=index(transpose(split(flatten(split(RegexReplace(join("★",if(A:A<>"",A:A,"?")),"(★?)(?:★?) ","$1"),"?")),"★")))

轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/416292.html
標籤:
上一篇:獲取單元格的所有內容作為文本
