我试图获取用户表单上的文本框的值并将其分配给字符串变量,然后使用String类的Insert方法将连字符插入该字符串变量中。每次运行此代码时,都会突出显示“无效限定符”错误,并突出显示AcctUnitString。
Dim AcctUnitString As String
AcctUnitString = AcctUnit.Text
AcctUnitString = AcctUnitString.Insert(2, "-")
Debug.Print (AcctUnitString)
AcctUnit是用户表单上文本字段的名称。可能导致此错误的任何想法,或者更好的方法来做我正在尝试做的事情?
用户将在文本框中输入13位代码(例如9200030015001),我想格式化它:92-0003-001-5001。任何帮助是极大的赞赏。谢谢!
答案 0 :(得分:3)
来自here
字符串不是VBA中的对象,因此它们没有像VB.Net中那样的子字符串或删除方法。
答案 1 :(得分:1)
我不知道内置的Excel功能可以满足您的需求。
Sub test()
Dim AcctUnitString As String
AcctUnitString = "9200030015001"
AcctUnitString = InsertString(AcctUnitString, "-", 2)
MsgBox AcctUnitString
End Sub
Private Function InsertString(OriginalString As String, StringToInsert As String, WhereToInsertIt As Integer) As String
Dim String1 As String, String2 As String
String1 = Mid(OriginalString, 1, WhereToInsertIt)
String2 = Mid(OriginalString, WhereToInsertIt + 1, Len(OriginalString))
InsertString = String1 & StringToInsert & String2
End Function