Excel 宏中的VBA xlUp错误

Excel 宏中的VBA xlUp错误,excel,vba,accpac,Excel,Vba,Accpac,有人能帮我吗? 我有这个语法 Dim oExcel As Variant Dim oWB As Variant 'Set oWB = CreateObject("Object.Workbook") Set oExcel = CreateObject("Excel.Application") Set oWB = oExcel.Workbooks.Open("Z:\MPR\Maret 2017\31 - 03 -2017\DF\PAL - DF.xlsx") oWB.Sheets(1).selec

有人能帮我吗? 我有这个语法

Dim oExcel As Variant
Dim oWB As Variant

'Set oWB = CreateObject("Object.Workbook")
Set oExcel = CreateObject("Excel.Application")
Set oWB = oExcel.Workbooks.Open("Z:\MPR\Maret 2017\31 - 03 -2017\DF\PAL - DF.xlsx")
oWB.Sheets(1).select
Dim oNumRow As Integer

'oNumRow = oWB.Sheets(1).UsedRange.Count
With oWB
    oNumRow = oWB.Sheets(1).Cells(oWB.Sheets(1).Rows.Count, "A").End(xlUp).row 'error
End With
oNumRow = oWB.Sheets(1).Cells(oWB.Sheets(1).Rows.Count, 1).End.row 'error
oNumRow = oWB.Sheets(1).Range("A1", oWB.Sheets(1).Range("A1").End(xlDown).row).Rows.Count'error

如果我将
Dim oExcel As Variant
更改为Dim oExcel As Excel.Application,则其中的程序错误。有人能提出什么建议吗?我是编程vba for macro的新手

如果您没有在Excel vba中运行代码,或者没有对Microsoft Excel对象库的引用,则该库中定义的常量对您的代码都不可用。你必须自己设定他们的价值观

您可以在代码开头添加以下行:

Const xlUp As Long = -4162
Const xlDown As Long = -4121

它们是我在您发布的代码中看到的仅有的两个常量,但是,如果您还有其他常量,它们也应该添加到您的代码中。

这不是VB.NET代码。VB.NET对于vba就像地毯对于caryeah一样,我知道这不是VB.NET:),但也许VB.NET中的任何人都知道代码不是如何工作的。也许有人使用Python或C++可以回答。这些问题只与VBA/Excel VBA有关,因此请删除标记。您在哪里运行代码?它是否在Excel的VBA中?还是别的地方?例如,如果是在Word VBA中,则不会定义
xlUp
(Excel对象库中的一个常量),并将被视为
0
,而不是
-4162
。那么YowE3K的注释是完全相关的。您需要引用Excel库,或者需要使用相应的数值,而不是xlUp。xlUp是Excel的内部版本。