是否可以使用Selection
来定义另一个工作表中的宏按钮中使用的数据。
我试图制作一个模板工作簿,第一张工作表是一堆宏按钮。我希望能够在另一个工作表中选择数据,单击我的按钮表,然后单击我的按钮以在我在另一个工作表中选择的数据上运行宏。
我遇到的问题是工作表似乎同时有独立的选择。所以我的宏总是运行在按钮表上的选择而不是我所在的表单上。有关如何使这项工作的任何想法?数据的选择需要是动态的,所以我不能说.Cells(1,1).value因为它可能不是我需要的数据。
答案 0 :(得分:1)
假设有两种类型的工作表:
我们在标准模块中编码单个全局范围变量。我们在所有数据表中编码选择更改事件宏。然后:
修改#1:强>
要了解有关事件宏(工作表代码)的更多信息,请参阅:
http://www.mvps.org/dmcritchie/excel/event.htm
也只是Google: Excel VBA事件宏
(例如,此论坛中有很多示例)
答案 1 :(得分:0)
https://msdn.microsoft.com/en-us/VBA/Excel-VBA/articles/workbook-sheetselectionchange-event-excel
在这个链接中我需要开始。每次我更改我的选择时,它都会运行一个事件,我可以抓取单元格值并将它们存储在一个数组中,当我更换工作表时它将保持静态。如果我做对了,我会在这里发布。 2018年5月31日
答案 2 :(得分:0)
要实现此目的,我将rng设置为一个公共变量,并将在sheet2中的选择存储在其中。然后,我使用按钮中的click事件来调用要在范围内运行的宏。这是我的模块和工作表中代码的一些屏幕截图。该答案适用于将来发现此问题的任何人。
最大的不足是,vba中的公共变量只需要在任何模块中声明一次。不在您的表代码中。这是使我无法完成任务的最大事情。祝您好运,如有任何疑问,请与我联系。