循环访问当前工作簿

时间:2015-11-24 18:23:42

标签: excel vba visual-studio excel-vba vsto

当用户单击功能区上的按钮时,我试图遍历活动工作簿中的所有工作表。

我遇到的唯一问题是实际迭代工作表,我有以下错误:

  

表达式属于' Workbook',它不是集合类型。

虽然我明白这意味着什么,但我不知道如何实现我想要的目标。

Private Sub Button1_Click(sender As Object, e As RibbonControlEventArgs) Handles Button1.Click

    Dim wks As Worksheet, objList As ListObject

    For Each wks In Globals.ThisAddIn.Application.ActiveWorkbook  ' ERROR LINE

        For Each objList In wks.ListObjects
            objList.Unlist()
        Next objList

    Next wks
End Sub

** 更新 ** 根据评论和答案编辑了代码,但它给了我一个新的错误

Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets
  

类型' System.InvalidCastException'的例外情况发生在ConvertAllTablesToRange.dll但未在用户代码中处理

     

附加信息:无法转换类型为' System .__ ComObject'的COM对象。到界面类型' Microsoft.Office.Tools.Excel.Worksheet'。此操作失败,因为QueryInterface调用COM组件上的接口与IID< {297DC8D9-EABD-45A1-BDEF-68AB67E5C3C3}'由于以下错误而失败:不支持此类接口(HRESULT异常:0x80004002(E_NOINTERFACE))。

1 个答案:

答案 0 :(得分:1)

ActiveWorkbook.Worksheets是您正在寻找的系列。