在使用msoEncodingUTF8枚举值时,我需要做些什么来避免出现未定义的变量错误?这是一个附加到MS Access表单的VBA脚本,用于将报告输出到文件:
Option Compare Database
Option Explicit
Private Sub DoStuff()
...
DoCmd.OutputTo acOutputReport, "myReport", acFormatPDF, "C:/path/file.pdf",False,"",msoEncodingUTF8, 0
...
End Sub
我知道我可以用65001替换msoEncodingUTF8并继续前进,但我真的宁愿使用枚举值来提高可读性
答案 0 :(得分:1)
msoEncodingUTF8 是 Office.MsoEncoding 枚举的成员。您可以通过设置对 Microsoft Office对象库版本的引用来使其可用。
通常,名称以 mso 开头的常量可从该库中获得。我不确定情况总是如此,但我会先看一下。
如果您希望限制项目中的引用数量,则可以在本地定义该常量。
Const msoEncodingUTF8 As Long = 65001