我已经编写了这段代码来在excel中拆分文本和数字,但是每当我运行它时,它就行不通了
Public Function Strip(ByVal x As String, LeaveNums As Boolean) As Variant
Dim y As String, z As String, n As Long
For n = 1 To Len(x)
y = Mid(x, n, 1)
If LeaveNums = False Then
If y Like "[A-Za-z ]" Then z = z & y 'False keeps Letters and spaces only
Else
If y Like "[0-9. ]" Then z = z & y 'True keeps Numbers and decimal points
End If
Next n
Strip = Trim(z)
End Function
答案 0 :(得分:0)
您编写(复制了)Function
,而不是子例程。函数通常用于重复过程,并返回(如果编写正确)值。因此,您可以从子例程中调用函数,然后对函数返回的值进行处理。该函数使用x
和LeaveNums
参数执行某些操作,就像公式一样。
实际上,您可以编写函数并将其用作Excel工作表中的公式。
您可以按以下方式调用此函数(注意,这是一个示例)
Sub Usefunction()
rslt = Strip("test this 1.01", True)
MsgBox rslt
End Sub
这将返回“测试此”。如果将布尔值设置为False
,则该函数将返回“ 1.01”。