excel - 使用 udf 将工作表复制到新工作簿

标签 excel vba excel-udf

我有一个包含 5 张 UDF(用户定义函数)的工作簿。
我需要将这 5 张工作表复制到新工作簿,但我只需要这些值。
问题是,当我复制这些工作表时,所有带有 UDF 的单元格都被 #value 破坏了,因为我在这个新工作簿上没有我的宏。

我无法复制模块,因为很多用户会使用这个工作簿,也许他们的 Excel 不允许我操作 vba 项目

我尝试在工作簿之间仅复制和粘贴值,但它不起作用。我认为那是因为我的工作表有很多合并的行和列。 Excel 显示一条错误消息。我会在这里从葡萄牙语翻译成英语,也许 Excel 不使用这个完全有效:

This option requires that merged cells are all the same size.

我不明白这个错误。我什至尝试手动执行此操作:复制整个工作表(右键单击、移动和复制),然后选择我原始工作簿上所有使用的范围,ctrl+c,然后选择新工作簿中的第一个单元格,然后 ctrl+v 和然后只粘贴值。并且 Excel 会抛出错误。我还尝试在按 ctrl+v 之前选择新工作簿上的整个范围。同样的问题。

我不知道该怎么办。我现在正在做的是仅复制和粘贴原始工作簿中的值,然后将整个工作表复制到新工作簿。问题是这个操作破坏了我原来的工作簿,所以我必须关闭它然后重新打开,这是我不想做的。

有人知道如何进行吗?

最佳答案

尝试这些步骤

  1. 复制现有文件中的工作表。
  2. 在新复制的工作表(在现有文件中)中复制并粘贴所有信息的值
  3. 将新复制(和新粘贴的值)表移动到新文件。

关于excel - 使用 udf 将工作表复制到新工作簿,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25453734/

相关文章:

VBA 从网页中查找文本

excel - 与字符串比较时如何使用 "TypeOf ___ is ___ Then "

VBA:如何使VBE中当前光标跳转到最后发生错误的行?

excel - 复制并粘贴到另一个工作表的第一个空行,如果第一个单元格为空,则粘贴到上一行

vba - 为什么这个应该对每一列求和的程序只在一列之后就停止了?

VBA:从 2 列中的 For 函数返回字符串

excel - 使用 VBA 在远程桌面上打开文件

performance - 在 Excel VBA 中,volatile Offset 函数非常慢。什么是替代品?

vba - 具有无限参数的 UDF

vba - 将 Excel UDF 放入工作表对象中(而不是放在模块中)