VBA Excel-mso常量为空
由于某种原因,我无法在mso中安装contants来工作。我有一个新安装的Excel 2003,我想知道我是否需要包括一些类型的库,它的功能,任何帮助是感激的。以下是一个例子: 这项工作:VBA Excel-mso常量为空,excel,vba,constants,Excel,Vba,Constants,由于某种原因,我无法在mso中安装contants来工作。我有一个新安装的Excel 2003,我想知道我是否需要包括一些类型的库,它的功能,任何帮助是感激的。以下是一个例子: 这项工作: If sh.Type = 13 Then ' image found msoPicture picIdx = sh.ZOrderPosition ' image index End If 这不是,msoPicure显示为空变量 If sh.Type = msoPicture Then
If sh.Type = 13 Then ' image found msoPicture
picIdx = sh.ZOrderPosition ' image index
End If
这不是,msoPicure显示为空变量
If sh.Type = msoPicture Then ' image found
picIdx = sh.ZOrderPosition ' image index
End If
下一个
但是,当我查看sh
内部时,对象类型正确显示msoPicture
我感到莫名其妙,再多的谷歌也没有把我带到任何地方
msoPicture
是微软Office X.Y对象库的一部分。您需要确保已将其添加为引用
你可以做些什么来检查这个问题:
- 在对象浏览器中搜索。如果你没有点击,它是不可用的
- ctrl+space以查看intellisense是否会看到您的对象
- 始终为您编写的所有代码设置
(Option Explicit
)Tools>Options>Editor>Require Variable Declaration
- 经常编译。我希望编译按钮随时可用。您可以轻松地将其添加到工具栏
右键单击工具栏>自定义>命令>调试>编译项目
(将其拖动到工具栏上的适当位置)
选项Explicit
?是的,这个程序过去常常在不同的计算机上运行,只是因为vba运行并不意味着当您点击“编译”时它会成功。因为VBA可以被解释,所以在遇到编译错误之前,您可以避免编译错误。@TimWilliams我同意。应该是。那个枚举在另一个库中吗?你认为有冲突吗?也许是偶然发现的……它就在你提到的图书馆里——但只有在没有发现的情况下,它才会丢失。非常感谢。我知道这和推荐信有关,但不知道是哪一个。看起来我没有通用的MS office对象库,相反,我有特定的应用程序MS对象。@user3512822,如TimWilliams所说,除非您取消选中该引用,否则默认情况下应该包括它。这就是我选择的未选中的[图像]()