楼主想要的功能,可以使用VBA程序代码实现。(当然,如果不是大量的数据处理,写VBA程序确实有点不划算)
(一)VBA程序代码如下:(程序运行之前请做好数据备份,以免丢失)
Dim i1, i2, i3, i4, i5, Arr, str1, str2, str3, str4
On Error Resume Next
Set mysheet1 = ThisWorkbook.Worksheets("Sheet1")
mysheet1.Range("B:BBB") = "" '清空单元格
Arr = Array(Chr(34), ",") '间隔的标志,数组
For i1 = 2 To 10000 '从第二行到10000行
i6 = 1 '列,从第2列开始
If mysheet1.Cells(i1, 1) "" Then
For Each str2 In Arr '逐一去判断字符组里面的每一个字符
i4 = 0
For i2 = 1 To 1000 'i2一个字符大约循环1000次(中间可能退出)
str4 = ""
i3 = InStr(i3 + 1, mysheet1.Cells(i1, 1), str2) '判断字符所在的位置
str1 = Mid(mysheet1.Cells(i1, 1), i3 + 1, 1) '截取字符
If i3 0 And IsNumeric(str1) = True Then '如果截取的字符是数字,则
i6 = i6 + 1
For i5 = i3 + 1 To 100000 '从第i3+1个字符开始
str3 = Mid(mysheet1.Cells(i1, 1), i5, 1)
If IsNumeric(str3) = True Then '如果截取的是数字,则
str4 = str4 & str3
Else
Exit For
End If
Next
mysheet1.Cells(i1, i6) = str4 '把数字填入同一行的列
End If
If i3 = 0 Then
Exit For
End If
Next
Next
End If
Next
End Sub
(二)VBA程序的运行结果如下:(写代码不易,望笑纳)