我的excel列充满了这样的词:
1.) ABC:DCF
2.) DCF:FED
Run Code Online (Sandbox Code Playgroud)
我想根据“:”拆分每个单词并将结果放在相邻的列中,以便单元格“A:1”中的“ABC:DCF”变为单元格“B:1”中的“ABC”和单元格“中的“DCF” C:1" 以及每列中的相应值。这该怎么做?
nut*_*sch 86
文本到列将起作用。另一种选择,如果你想保持原来的值,是使用公式:
在 B1
=left(a1,find(":",a1)-1)
Run Code Online (Sandbox Code Playgroud)
在 C1
=mid(a1,find(":",a1)+1,len(a1))
Run Code Online (Sandbox Code Playgroud)
Jam*_*ull 26
如果您可以使用 VBA,则可以使用该Split()功能。这是您可以在单元格中使用的用户定义函数 (UDF)。它根据您选择的字符进行拆分,并返回拆分列表的第n个元素。
请参阅如何在 MS Office 中添加 VBA? 有关如何定义 UDF 的信息。
Function STR_SPLIT(str, sep, n) As String
Dim V() As String
V = Split(str, sep)
STR_SPLIT = V(n - 1)
End Function
Run Code Online (Sandbox Code Playgroud)
所以你需要输入:
=STR_SPLIT(A1, ":", 1) // for the first half
=STR_SPLIT(A1, ":", 2) // for the second half
Run Code Online (Sandbox Code Playgroud)
将其粘贴到 B1 并将其填充到右侧的列和向下的行中:
=TRIM(MID(SUBSTITUTE($A1,":",REPT(" ",999)),COLUMNS($A:A)*999-998,999))
编辑:我之前发布了该公式的本地化版本,其中“,”被替换为“;”。这在美国版本的 Excel 中不起作用:
=TRIM(MID(SUBSTITUTE($A1;":";REPT(" ";999));COLUMNS($A:A)*999-998;999))
| 归档时间: |
|
| 查看次数: |
363275 次 |
| 最近记录: |