首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何复制/复制UserForm

如何复制/复制UserForm
EN

Stack Overflow用户
提问于 2019-10-29 22:29:34
回答 2查看 3.2K关注 0票数 0

问题是我已经创建了一个UserForm,现在我需要另一个设计和代码相同的。

我试图使用所选的UserForm复制/粘贴通常的副本/粘贴,但它不起作用。实际上,VBA编辑器中的“版本组”中的“复制/粘贴”选项显示为禁用。

我已经尝试导出UserForm并更改名称,以保存它并在我的proyect中再次导入它,但是它会使我再次出现一个名称匹配错误。

正如我在下面的图像中显示的那样,我从原始的UserForm中导出了另一个名为UserForm1的名称,而不是将它保存为UserForm2。

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

,我需要在我的作品中复制这个UserForm,更改名称

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-10-29 22:55:07

这是因为表单的正确名称隐藏在文件中,而文件名本身在表单导入过程中被忽略。如果您实际上需要在项目中有第二个UserForm,那么我建议这样做:

  1. 导出UserForm1原样(在保存期间不重命名)
  2. 将UserForm1重命名为UserForm2 (仅在属性窗口中)
  3. 导入UserForm1

但是,我建议考虑创建表单的另一个实例,并在必要时动态地修改它--这可能有助于避免单独更新每个UserForm。

例如:

代码语言:javascript
复制
dim f1 as new UserForm1
dim f2 as new UserForm1

f1.show
f2.show
票数 4
EN

Stack Overflow用户

发布于 2019-10-30 02:48:06

对于任何想要在同一个项目中使用相同形式的线程的

,请遵循@ Tomek .提供的建议。

对于其他人,我认为你“可以”导出/重命名/导入,但你必须打开一个菜单,选择导出并处理保存文件的麻烦--这甚至不是其中的一半,你必须打开另一个菜单才能让它恢复,除了记住保存它的位置之外。重新命名它!?!这是太多的工作,我无法跟踪,如果你像我一样,你已经忘记了第三步。

所以我要做的就是打开Excel的第二个实例,把模块拖到那个项目中,然后再把它拖回来。从技术上讲,我认为你仍然在导出、重命名和导入.但这感觉肯定不像。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58616255

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档