gpt4 book ai didi

vba - Excel 2013 VBA : Setting activeworkbook when clicking between workbooks

转载 作者:行者123 更新时间:2023-12-04 21:56:34 26 4
gpt4 key购买 nike

我有一个带有用户窗体的工作簿,其中包含一个用于在工作表上填充数据的列表框。

如果我打开了多个工作簿,并且我从一个工作簿直接单击另一个工作簿中用户窗体上的列表框,则在 Activeworkbook 更改以反射(reflect)包含该用户窗体的工作簿之前触发 ListBox_Change 事件。所以当代码达到Set EqDataSht = ActiveWorkbook.Worksheets("Equipment-Data")我收到一个下标超出范围错误,因为我来自的工作簿不包含名为“设备数据”的工作表。

将 ActiveWorkbook 设置为用户窗体的父级的最佳方法是什么?我的想法是设置一个公共(public)变量 wb = ActiveWorkbook在 workbook_open 或只是捕获 Err.Number=9 并告诉用户在单击用户窗体之前单击工作表。我敢肯定,我完全忽略了一些简单的事情(VBA 业余爱好者)。

想法?

最佳答案

而不是 activeworkbook使用 thisworkbook它返回代码所在的工作簿。

使其活跃thisworkbook.activate应该管用

关于vba - Excel 2013 VBA : Setting activeworkbook when clicking between workbooks,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43505321/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com