在VBA

时间:2015-05-05 03:20:13

标签: vba ms-access access-vba ms-access-2010

在使用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并继续前进,但我真的宁愿使用枚举值来提高可读性

1 个答案:

答案 0 :(得分:1)

msoEncodingUTF8 Office.MsoEncoding 枚举的成员。您可以通过设置对 Microsoft Office对象库版本的引用来使其可用。

通常,名称以 mso 开头的常量可从该库中获得。我不确定情况总是如此,但我会先看一下。

如果您希望限制项目中的引用数量,则可以在本地定义该常量。

Const msoEncodingUTF8 As Long = 65001