2

当我试图创建一个工作表对象时,出现错误:

    Dim oFS   : Set oFS  = CreateObject("Scripting.FileSystemObject")
    Dim oXls  : Set oXls = CreateObject("Excel.Application")
    Dim oWb   : Set oWb  = oXls.Workbooks.Open(oFs.GetAbsolutePathName("Wing_To_Wing_Report.xlsx"))
    Dim aData ': aData    = oWb.Worksheets(1).Range("$A2:$C10")
    Dim dicP  : Set dicP = CreateObject("Scripting.Dictionary")
    Dim Range,ObSheet1,ObSheet2
    Dim TotalRows,LastCol


    ObSheet1=oWb.ActiveWorkbook.Worksheets("WingToWingMay25")
    ObSheet2=oWb.ActiveWorkbook.Worksheets("ParentChildLink")

也试过这个:

   ObSheet1=oWb.Worksheets("WingToWingMay25")
   ObSheet2=oWb.Worksheets("ParentChildLink")

错误对象不支持此属性或方法:“ActiveWorkbook”

你能帮我吗?为什么这样。

4

2 回答 2

3
  1. oWb 本身是一个工作簿对象您不需要该ActiveWorkbook 部分
  2. 你错过了set关键字 set ObSheet1=oWb.Worksheets("WingToWingMay25")

另外,我从您的一个打印屏幕中看到,您正在使用 Notepad++ 进行开发,

而不是直接运行脚本,

请使用调试器来测试脚本。

你可以在这里找到调试器

使用调试器,您可以逐行运行源代码,

并使用监视窗口在运行时查看每个对象的属性。

于 2012-12-20T07:30:28.320 回答
0

而不是ObSheet1=oWb.ActiveWorkbook.Worksheets("WingToWingMay25"),你应该这样做:

set ObSheet1=oWb.ActiveWorkbook.Worksheets("WingToWingMay25")
于 2012-12-20T07:30:00.147 回答