2011-05-05 42 views

回答

2

不,我不认为这是可能的。

用户表单只是容纳ActiveX控件的容器。电子表格也是ActiveX控件容器,所以我不确定容器中容器的好处是什么。

您可以轻松将一组单元格着色为一个用户窗体,并将该ActiveX控件放置在该范围内。这将模拟电子表格中嵌入的用户表单。你会缺少用户表单级别的事件,可能还有其他一些事情。但是如果你想要这些东西,你可能只是使用一个用户表单。

如果有什么你想要做的,我想念,让我知道。

+0

感谢您的信息。我有这样的感觉。让用户点击按钮来调出用户表单感觉非常多余。在福利方面,我相信它会让我们的生活更轻松!我不把用户形式视为一个容器,而是一个自我控制的控制。因此它可能直接属于电子表格。 – 2011-05-05 22:51:58

+0

@rushui,看我的回答,不需要点击一个按钮来调出表格。 – jpinto3912 2011-05-05 22:57:29

+0

@rushui如你所说,你可以直接将表单控件添加到工作表并为它们编写代码。将它们设置在表单上的一个部分,甚至可以分组和格式化以保持原样。这将做你想做的一切。 – datatoo 2011-05-06 04:56:03

0

您可以将MyForm.Show代码放在Workbook.Open事件上,以便在您打开文件时启动表单...我已经完成了。您甚至可以选择放置表单的位置。如果可能(如果可能的话,我相当积极),可能会触发并发的VB代码:例如,自动计算单元格和表单代码。这是一个问题,因为XL是单一的VBA线程,因此发生两件事情是不可能的。无论是表单显示,它的代码正在运行,或XL应用程序正在运行,并做单元格/图表/等东西。

1

将这个工作表模块 VB中:

私人小组Worksheet_Activate() UserForm1.Show 结束小组