无法访问全局变量运行时错误' 91'对象变量未设置

时间:2015-10-01 19:59:55

标签: excel-vba vba excel

工作表的名称在共享模块中声明。我上周运行代码时能够访问这些变量。由于某些未知原因,他们已无法从其他模块访问,我得到运行时错误91'每次我按设置名称引用工作表时都不设置对象变量:

共享模块代码:

Public Const WS_ALLV    As String = "Graph_QC"
Public Const WS_LIST   As String = "GeneList"
Public Const WS_QC     As String = "QC"
Public Const WS_COLON   As String = "COLON"
Public Const WS_LUNG    As String = "LUNG"
Public Const WS_MELA    As String = "MELANOMA"
Public Const WS_ALL     As String = "All"
Public Const WS_IGV     As String = "IGVLinks"
Public Const WS_REP1    As String = "Report_1"
Public Const WS_REP2    As String = "Report_2"
Public Const WS_CMMTS   As String = "Comments"
Public Const WS_ACCESS  As String = "Access"

'wsColon wsLung wsMela wsAll wsIGV wsRep1 wsRep2 wsCmmts wsAccess
Public wsQC             As Worksheet
Public wsColon          As Worksheet
Public wsLung           As Worksheet
Public wsMela           As Worksheet
Public wsAll            As Worksheet
Public wsIGV            As Worksheet
Public wsRep1           As Worksheet
Public wsRep2           As Worksheet
Public wsCmmts          As Worksheet
Public wsAccess         As Worksheet
Public wsAllValues      As Worksheet
Public wsGeneList       As Worksheet



Public Sub setSheets()

    Set wsQC = Worksheets(WS_QC)
    Set wsColon = Worksheets(WS_COLON)
    Set wsLung = Worksheets(WS_LUNG)
    Set wsMela = Worksheets(WS_MELA)
    Set wsAll = Worksheets(WS_ALL)
    Set wsIGV = Worksheets(WS_IGV)
    Set wsRep1 = Worksheets(WS_REP1)
    Set wsRep2 = Worksheets(WS_REP2)
    Set wsCmmts = Worksheets(WS_CMMTS)
    Set wsAccess = Worksheets(WS_ACCESS)
    Set wsAllValues = Worksheets(WS_ALLV)
    Set wsGeneList = Worksheets(WS_LIST)

End Sub

当我尝试从另一个模块访问这些变量时收到错误消息。请参阅发生错误的示例。

For Each ws In ThisWorkbook.Worksheets
        If ws.Name <> wsAll.Name And ws.Name <> wsIGV.Name And ws.Name <> wsAccess.Name And ws.Name <> wsCmmts.Name And ws.Name <> wsQC.Name And ws.Name <> wsAllValues.Name And ws.Name <> wsGeneList.Name Then

为什么会突然发生这种情况?

谢谢

0 个答案:

没有答案