当文件名的用户条目包含非法字符时,如何处理错误



我使用输入到范围("Company_Name")的信息将当前工作表保存为PDF文档,以生成部分文件名。

我遇到的一个问题是,用户使用文件名(& " ? < > # { } % ~ / )中禁止使用的特殊字符。

'Save Copy of Order Form in PDF Format
Dim path As String
Dim fname As String
fname = Sheets("ORDER FORM").Range("Company_Name").Value & " - " & Format(Now(), "dd-mm-yyyy hhmmss")
path = Application.ActiveWorkbook.path
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:=path & "" & fname & ".pdf", _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
Application.ScreenUpdating = True
'Completion MsgBox
MsgBox "Order has saved in PDF Format and stored in file:" & vbNewLine & path, vbInformation + vbOKOnly, "File Saved"
On Error GoTo ErrorHandler
ErrorHandler:
MsgBox "Please check that the company name does not include any of the characters highlighted in the popup box", vbCritical
Resume

如果公司名称中没有特殊字符,则此代码有效。

我正在尝试创建一个错误处理程序,向用户发出msgbox,以检查公司名称是否包含任何特殊字符。

  1. 您的On Error GoTo ErrorHandler需要位于子节点的顶部,或者至少在发生错误之前
  2. 我建议只执行类似于下面的子字符串检查,而不是错误处理程序,因为错误处理程序可以捕获任何可能发生的错误
If InStr(1, path, "/", vbTextCompare) = 0 Then
MsgBox "Contains illegal characters"
End Sub
End If

相关内容

  • 没有找到相关文章

最新更新