【发布时间】:2020-11-21 06:16:20
【问题描述】:
我在通过 VBA 表单创建的 Excel 电子表格的单元格中有一个字符串。
在表单开发过程中,我们拥有三个唯一代码(MIC-CT-xxx、MIC-ET-xxx 和 MIC-UT-xxx)。
我有一个正在工作的功能。现在我需要根据最后一个值搜索 LastNo。
Public Function UniqueID()
LastID = xTracker.Range("B" & tRow).Value
LastNo = CLng(Replace(LastID, "MIC-*-", ""))
If Me.CB_CType.Value = "Create" Then
NewID = "MIC-CT-" & Format(LastNo + 1, "000")
ElseIf Me.CB_CType.Value = "Edit" Then
NewID = "MIC-ET-" & Format(LastNo + 1, "000")
ElseIf Me.CB_CType.Value = "Update" Then
NewID = "MIC-UT-" & Format(LastNo + 1, "000")
End If
End Function
我可以通过 If 进行搜索,但想知道是否有在文本字符串中插入通配符来查找 MIC-*-xxx 而不是完整字符串的方法。
【问题讨论】:
-
您可以使用正则表达式。见:VBA Regex
-
不幸的是我没能让它工作。可能是我对 VBA 的了解有限。
标签: excel vba string function wildcard