我在電子表格中有一個典型的書籍索引,如下所示:

我需要 Excel 來識別同一單元格中的不同整數并為每個整數添加一個常數。
假設常數是 5
結果應該是這樣的:

我無法讓 excel 識別單元格中的不同值。
uj5u.com熱心網友回復:
我的兩分錢,假設 Excel ms365:

中的公式B1:
=BYROW(A1:A3,LAMBDA(a,LET(X,TEXTSPLIT(a,", "),TEXTJOIN(", ",,IFERROR(X C1,X)))))
或者,如果無法訪問TEXTSPLIT(),則使用:
=BYROW(A1:A3,LAMBDA(a,LET(X,FILTERXML("<t><s>"&SUBSTITUTE(a,",","</s><s>")&"</s></t>","//s"),TEXTJOIN(", ",,IFERROR(X C1,X)))))
或者,如果無法訪問BYROW(),則必須拖動以下內容:
=LET(X,FILTERXML("<t><s>"&SUBSTITUTE(A1,",","</s><s>")&"</s></t>","//s"),TEXTJOIN(", ",,IFERROR(X C$1,X)))
uj5u.com熱心網友回復:
不確定這是否可以順利完成并且無需使用冗長而復雜的公式。
為什么不嘗試將單元格拆分為多列(Data > Data Tools > Text To Columns > Delimited并選擇Comma作為分隔符)。一旦所有不同的值都是單獨的列,就可以輕松應用公式并添加常量。之后,您可以使用CONCATENATE公式將文本和數字合并回單個列中的單個值。
希望這可以幫助。
uj5u.com熱心網友回復:
我會將文本和每個值分隔到單獨的單元格中,然后使用 & 組合成您想要的格式,如下所示:
=A1&", "&B1 G1&", "&C1 G1&", "&D1 G1
其中 A1 包含“創傷”,B1 包含 15,C1 包含 17,D1 包含 25。G1 保持常數 5。
看

uj5u.com熱心網友回復:
這是我嘗試過的,

公式僅適用于 O365 Beta 頻道(內部人員)。
? 單元格B1中使用的公式
=TEXTJOIN(", ",,TEXTBEFORE(A1,", ",1),TEXTSPLIT(TEXTAFTER(A1,", ",1),", ") 5)
或者,如果您沒有使用上述 Excel 版本,而是使用Excel 2019、2021 或常規 O365,那么,

? 單元格B1中使用的公式
=TEXTJOIN(", ",,LEFT(A1,FIND(",",A1)-1),IFERROR(
FILTERXML("<a><b>"&SUBSTITUTE(A1,", ","</b><b>")&"</b></a>","//b") 5,""))
編輯
一種即興方法:
=TEXTJOIN(", ",,TEXTBEFORE(A1,", ",1),IFERROR(TEXTSPLIT(A1,", ") 5,""))
您還可以使用Power Query輕松完成此任務。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/455254.html
下一篇:如何阻止excel公式改變?
