问题是我已经创建了一个UserForm,现在我需要另一个设计和代码相同的。
我试图使用所选的UserForm复制/粘贴通常的副本/粘贴,但它不起作用。实际上,VBA编辑器中的“版本组”中的“复制/粘贴”选项显示为禁用。

我已经尝试导出UserForm并更改名称,以保存它并在我的proyect中再次导入它,但是它会使我再次出现一个名称匹配错误。
正如我在下面的图像中显示的那样,我从原始的UserForm中导出了另一个名为UserForm1的名称,而不是将它保存为UserForm2。

此操作将返回一个关于已经使用的名称“UserForm1”的错误。

,我需要在我的作品中复制这个UserForm,更改名称
发布于 2019-10-29 22:55:07
这是因为表单的正确名称隐藏在文件中,而文件名本身在表单导入过程中被忽略。如果您实际上需要在项目中有第二个UserForm,那么我建议这样做:
但是,我建议考虑创建表单的另一个实例,并在必要时动态地修改它--这可能有助于避免单独更新每个UserForm。
例如:
dim f1 as new UserForm1
dim f2 as new UserForm1
f1.show
f2.show发布于 2019-10-30 02:48:06
对于任何想要在同一个项目中使用相同形式的线程的
,请遵循@ Tomek .提供的建议。
对于其他人,我认为你“可以”导出/重命名/导入,但你必须打开一个菜单,选择导出并处理保存文件的麻烦--这甚至不是其中的一半,你必须打开另一个菜单才能让它恢复,除了记住保存它的位置之外。重新命名它!?!这是太多的工作,我无法跟踪,如果你像我一样,你已经忘记了第三步。
所以我要做的就是打开Excel的第二个实例,把模块拖到那个项目中,然后再把它拖回来。从技术上讲,我认为你仍然在导出、重命名和导入.但这感觉肯定不像。
。
https://stackoverflow.com/questions/58616255
复制相似问题