代码之家  ›  专栏  ›  技术社区  ›  Sean Bailey

VBA代码名参考

  •  1
  • Sean Bailey  · 技术社区  · 8 年前

    我希望通过代码名引用我的工作表,作为更长vba代码的一部分-我目前拥有的代码是:

    If wb.Sheets("stage 1").Visible = xlVeryHidden Or wb.Sheets("stage 1").Visible = xlHidden Then wb.Sheets("Stage 1").Visible = True
    

    我想将其更改为以下内容-“阶段1”=excel文件中的Sheet8

    If wb.Sheet8.Visible = xlVeryHidden Or wb.Sheet8.Visible = xlHidden Then wb.Sheet8.Visible = True
    

    有人能告诉我如何克服这个问题,或者我的代码哪里不正确吗?

    提前感谢

    2 回复  |  直到 7 年前
        1
  •  2
  •   FunThomas    8 年前

    VBA中的图纸名称是 codeName

    ThisWorkbook (这是您代码所在的工作簿),您可以在代码中访问它,就像它是一个变量一样(删除) wb.

       Sheet8.Visible = xlVeryHidden Or Sheet8.Visible = xlHidden Then Sheet8.Visible = True
    

    但是,如果要从其他工作簿访问工作表,则必须遍历所有工作表才能找到它。看见 https://stackoverflow.com/a/25203416/7599798

        2
  •  -2
  •   Jean-Pierre Oosthuizen    8 年前

    您需要做的是使用:

        Dim Sht8 As Worksheet
        Set Sht8 = wb.Sheets("stage 1")
    

    Sheet8 Sheet1 , Sheet2 Sheet3 用于初始图纸名称。