我正在使用下面的代码更轻松地导航工作簿 . 但是,运行宏光标后运动是奇数(限制范围和跳跃) . 此外,单击红色“x”关闭窗口时,工作簿不会关闭 . 此外,组和取消组合图标(用于隐藏或扩展行和列)不起作用 . 似乎某种程度上“控制”仍然在VBA中,因为它应该是正常的Excel . 所有帮助都非常感谢 .
Userform code:
Option Explicit
Option Base 1
Private Sub UserForm_Initialize()
Dim ShList()
Dim ShCount As Integer
Dim x As Integer
Dim ListPos As Integer
ShCount = ActiveWorkbook.Sheets.Count
ReDim Preserve ShList(1 To ShCount)
For x = 1 To ShCount
If Sheets(x).Name = ActiveSheet.Name Then
ListPos = x - 1
End If
ShList(x) = Sheets(x).Name
Next x
With ListBox1
.List = ShList
.ListIndex = ListPos
End With
End Sub
Private Sub CommandButton1_Click()
Sheets(ListBox1.Value).Activate
Unload UserForm1
End Sub
Click button to activate code:
Option Explicit
Sub WorksheetSelect_Click()
UserForm1.Show
End Sub
3 回答
我遇到了同样的问题,不得不删除以下代码:Sheets(1).Activate
删除后,我可以一如既往地关闭Excel .
我有同样的问题 . 它是通过将活动工作表上任何单元格中的任何单元格值更改为我的VBA代码中的最后一行来解决的 . 在我的情况下,我添加了VBA代码:Range(“A1”)=“_”,但您也可以将任何其他单元格更改为任何其他值 .
抱歉没有使用评论,因为它太长了,只是分析你的代码
所以主要的,删除保留,并为您的阵列添加一个擦除