excel - 隐藏用户窗体并显示指定的工作表
问题描述
我加载一个用户窗体,做一些事情,然后想隐藏那个用户窗体并显示一个打开的工作表。此工作表有一个命令按钮来运行将再次显示用户窗体的宏。发生的情况是,当我隐藏 UserForm 时,ActiveSheet 成为加载 UserForm 时处于活动状态的那个。定义活动工作表的后续尝试将被忽略,没有错误消息。
UserForm1.Show
' stuff
Workbooks("datafile").Sheets(1).Activate ' ActiveSheet is correctly redefined
UserForm1.Hide ' ActiveSheet changes to the active sheet when UserForm was loaded
Workbooks("datafile").Sheets(1).Activate ' Ignored. no change to ActiveSheet
' Shows whomever loaded the user form: either the VBA debugger or the original worksheet
解决方案
我无法重新创建此问题,发布的代码对我有用。
但是,UserForm1
可能与以下说明重叠,请在DoEvents
再次激活所需的工作表之前尝试添加功能。像这样的东西:
UserForm1.Show
' stuff
Workbooks("datafile").Sheets(1).Activate ' ActiveSheet is correctly redefined
UserForm1.Hide ' ActiveSheet changes to the active sheet when UserForm was loaded
DoEvents
Workbooks("datafile").Sheets(1).Activate
推荐阅读
- javascript - 单页应用中的多个地址参数
- reactjs - 在 React 中路由后如何调用函数?
- kotlin - Intellij 在 Kotlin 的注释字段之前禁用新行
- html - 在 CSS 中响应式缩放 SVG
- excel - 通过引用其他单元格中包含的工作表的名称来获取不同工作表中单元格的值
- python - 如何在 django 中使用 get_absolute_url 将字符串添加到我的博客文章路径而不是整数?
- flask - 从 Angular 向烧瓶应用程序提交表单时收到 CORS 策略错误
- awk - 分隔文件“|” 段落文本包括跨越多行的换行符
- python - 无法将 QLineEdit 输入转换为浮点数
- javascript - 在事件处理程序中引用 `this` vue 组件