MS Access和Excel实例化,未定义xlup

MS Access和Excel实例化,未定义xlup,excel,ms-access,vba,Excel,Ms Access,Vba,所以我使用了后期绑定,也就是说,setobjxl=createobject(“Excel.Application”)type stuff,从早期绑定切换到setobjxl=new Excel.Application或其他什么,但现在像.end(xlUp)这样的片段.row抛出错误,因为未定义xlUp。这是因为xlUp是在Excel中定义的,而不是在Access中定义的。您可以用相应的数值替换xlUp(imho不是一个好主意),也可以在Access中定义常量 Private Const xlUp

所以我使用了后期绑定,也就是说,
setobjxl=createobject(“Excel.Application”)
type stuff,从早期绑定切换到
setobjxl=new Excel.Application
或其他什么,但现在像
.end(xlUp)这样的片段.row
抛出错误,因为未定义
xlUp

这是因为xlUp是在Excel中定义的,而不是在Access中定义的。您可以用相应的数值替换xlUp(imho不是一个好主意),也可以在Access中定义常量

Private Const xlUp as long = -4162

这需要更多的工作,但允许您使用xlUp,使您的代码更具可读性,并且可能在将来更易于维护。

这是因为xlUp是在Excel中定义的,而不是在Access中定义的。您可以用相应的数值替换xlUp(imho不是一个好主意),也可以在Access中定义常量

Private Const xlUp as long = -4162

这需要更多的工作,但允许您使用xlUp,使您的代码更具可读性,并且可能在将来更易于维护。

将引用设置为Excel(VBA屏幕、工具、引用,选择Microsoft Excel(Ver#)不是更有效吗对象库?然后可以像使用Excel一样进行编码。只是要小心-一旦Access模块运行,它可能会使Excel.EXE保持运行。

将引用设置为Excel不是更有效吗(VBA屏幕、工具、引用,选择Microsoft Excel(版本#)对象库?然后可以像使用Excel一样进行编码。只是要小心-一旦Access模块运行,它可能会让Excel.EXE保持运行。

使用
-4126
而不是
xlUp
使用
-4126
而不是
xlUp
是否有一个声明/定义的所有这些常量的主列表?我似乎找不到,而且我有很多“xl”用硬代码替换代码会很枯燥所以我注意到当我试着这样声明它时,我得到了一个错误,但是如果我硬代码,它就工作了我总是通过查看Excel中VBA中常量的定义来定义我所需要的,但是谷歌快速搜索得出这样的结论:啊,找出原因。它是-4162,而不是-4126(答案是错误的)是否有一个声明/定义所有这些常量的主列表?我似乎找不到一个,我有很多“xl”用硬代码替换代码会很枯燥所以我注意到当我试着这样声明它时,我得到了一个错误,但是如果我硬代码,它就工作了我总是通过查看Excel中VBA中常量的定义来定义我所需要的,但是谷歌快速搜索得出这样的结论:啊,找出原因。它是-4162,而不是-4126(答案是错的)