Excel VBA隐藏良好的宏

Excel VBA隐藏良好的宏,excel,vba,Excel,Vba,我正在处理一个继承的电子表格(创建日期1998年,或者更早),需要更改对话框中的引用。我在“运行宏”列表中看不到宏或任何类似的内容,工作表本身不会显示在VBA project explorer窗口中,这听起来像是我在此处阅读的其他问题中的Excel 4.0宏。很多人建议从一开始就重写Excel4.0宏,但问题是我不知道宏的作用 具体来说,宏链接到一个命令按钮,当我单击“分配宏”时,宏的名称会写入“宏名称”文本框中,但实际上并没有在下拉菜单中列出。如果我试图通过在“宏名称”文本框中键入相同的名称来

我正在处理一个继承的电子表格(创建日期1998年,或者更早),需要更改对话框中的引用。我在“运行宏”列表中看不到宏或任何类似的内容,工作表本身不会显示在VBA project explorer窗口中,这听起来像是我在此处阅读的其他问题中的Excel 4.0宏。很多人建议从一开始就重写Excel4.0宏,但问题是我不知道宏的作用

具体来说,宏链接到一个命令按钮,当我单击“分配宏”时,宏的名称会写入“宏名称”文本框中,但实际上并没有在下拉菜单中列出。如果我试图通过在“宏名称”文本框中键入相同的名称来将此宏分配给另一个命令按钮,则会出现宏不可用的错误。
(截图链接:)

我尝试在这里使用解决方案(),因为我感兴趣的工作表实际上不是一个工作表,所以我将ws声明为一个对话框工作表

Public Sub TestAccessToXL4MacroSheet()

Dim ws As DialogSheet
Set ws = ThisWorkbook.ActiveSheet ' succeeds
Debug.Print ws.Name               ' outputs "Macro1"
Set ws = Worksheets("Macro1")     ' fails: "Subscript out of range"

End Sub
结果是工作表的名称显示在即时窗口中。 (截图链接:)

这是预期的结果吗?我已经可以将图纸名称视为选项卡,我想在VBA编辑器中查看图纸本身


我正在弥补这一点,因为我去,所以请随时写任何建议,在儿童的水平!谢谢

不确定您是否仍在寻找解决方案,但我是新来的,刚刚看到了这一点

XL4工作表(例如macro1工作表)在VB IDE中不可见

要在Excel中查看工作表,请右键单击其中一个可见的工作表选项卡,然后从菜单中选择命令“取消隐藏…”。您可以选择macro1工作表并单击“确定”

或者,尝试此代码

    Sub ShowAllSheets()
    Dim sh As Worksheet
    For Each sh In ActiveWorkbook.Sheets
    sh.Visible = True
    Next
    End Sub
然后需要手动将XL4代码转换为VBA

相信这会有所帮助。

请添加屏幕截图(因为您没有代表可以这样做,只需上传到Imgur.com并添加问题的链接即可)。据我所知,您无法对VBE隐藏工作表对象。另外,如果您编写了一些代码来尝试和调试(“将ws声明为对话表”--这意味着什么???),请包含您的代码。