我正在使用Excel 2013.我想修剪Excel中以数字结尾的“单词”,例如:
david22
yuvi1
michell555
导致:
david 22
yuvi 1
michell 555
有人可以帮忙吗?
答案 0 :(得分:1)
如果你不想使用vba,你应该试试这个:
我假设您的数据位于 A列中,因此以下公式应保留在 C列, 拖动此公式,直到您的数据存在于A列中。
=+SUMPRODUCT(MID(0&A1,LARGE(INDEX(ISNUMBER(--MID(A1,ROW($1:$25),1))*ROW($1:$25),0),ROW($1:$25))+1,1)*10^ROW($1:$25)/10)
,然后强>
在 B栏中使用以下公式并将其拖到最后。
=LEFT(A1,SEARCH(C1,A1)-1)
希望这有帮助
附件是截图供您参考。
一些警告:
1) - A列中的输入字符串必须短于25个字符
2) - 输入字符串中最多必须有14位数字。 (以下任何数字都将显示为零。)
但对于这个问题,你问它应该完全正常。
答案 1 :(得分:0)
网上有很多例子。
假设您在A列中有一个带有标题的数据..
以下工作分割b列中的文本,c列中的数字
Sub Seperate()
Dim r As Range, rC As Range
Dim v As Variant
Set r = Range("A2", Range("A2").End(xlDown))
With CreateObject("VBScript.RegExp")
.Pattern = "(\d+|\D+)"
.Global = True
For Each rC In r
v = Split(Mid(.Replace(rC.Value, "|$1"), 2), "|")
rC.Offset(, 1).Resize(, UBound(v) + 1).Value = v
Next rC
End With
End Sub
答案 2 :(得分:0)
将Word作为无格式文本复制并粘贴到Word中。使用通配符查找内容:([A-z])([0-9])
并将全部替换为替换为:\1 \2
。将结果复制回Excel并将文本应用于以空格作为分隔符的列。
答案 3 :(得分:0)
文本编辑器Vi或Vim可以完成这项工作。
第1行:age231
第2行:open432
第3行:bit042
命令模式中的命令1,3s/\(\D\)\(\d\)/\1\t\2/g
可以执行您想要的操作。