问题标签 [excel-udf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
51 浏览

excel - 在 Excel 计算后返回字符串时返回#value

这个用户定义的函数计算一些值;据此,我需要在调用单元格中返回一个字符串。

函数中的 MsgBox 测试有效,但在单元格中我只收到一个#value!错误。

为什么?

0 投票
1 回答
578 浏览

excel - 在 VBA(excel)中处理 UDF 中的长字符串时出现 #VALUE 错误

我在使用 UDF 返回带有长字符串(>256 个符号)的数组时遇到 #VALUE 错误。

示例代码:

在单元格中调用longString()作为数组公式时,单元格出现#Value错误,但通过调试,longString()返回没有错误。

我该如何解决这个问题?

0 投票
3 回答
418 浏览

vba - 循环遍历项目中的所有 UDF 名称

这个问题:Searching for function usage in Excel VBA让我想到了一个自动搜索电子表格中使用的所有 UDF 的过程。类似于以下内容:

这可能吗?如果可以,遍历所有 UDF 的语法是什么?

0 投票
1 回答
108 浏览

excel - excel UDF在工作表中使用时不起作用

我创建了一个在通过工作簿中的子激活时工作的函数,但是当尝试在工作表中激活它时(使用 =function_name(arguments))

这个函数正在调用这个子,它产生了我得到的错误

通过这个太阳调用函数时,我得到了想要的结果:

直接从我的工作表调用函数时,我无法使用此行更新表格单元格值(出现 1004 错误)

我尝试了各种方法,但都没有奏效。喜欢:

我究竟做错了什么?

0 投票
2 回答
497 浏览

string - VBA - 在工作表中查找某些字符串

我想创建一个宏或 UDF,它可以在包含以下内容的 excel 工作表中找到单元格: POxxx PO xxxxxxx PO# xxxxx PO#xxxx(其中 x 是数字)字符串可能位于单元格的开头或中间. 此外,函数/宏不应找到包含诸如 CORPORATE 之类的条目的单元格,其中 PO 是单词的一部分。

所有包含合格数据的单元格都应突出显示。

0 投票
2 回答
1595 浏览

vba - 自动计算与单元格属性相关的 Excel VBA UDF

我已经编写了一个 UDF 来计算某些颜色的单元格和某些 LineStyles,我发布了整个函数:

rData现在,我遇到的问题是,当其中一个单元格的颜色或线条属性发生变化时,公式不会自动计算。我已经添加了Application.Volatile,并且我还尝试通过Worksheet_Change子触发计算,但是这不起作用,因为 Excel 似乎没有考虑将颜色更改为单元格/工作表的更改。

当用户更改单元格的颜色或线条属性时,有什么方法可以使单元格自动计算和更新rData

编辑——已解决 非常感谢 ignotus,ChangeSelection 解决方法对我的目的来说已经足够了。没想到。背景信息也很方便,非常感谢。

0 投票
1 回答
185 浏览

sql - SQLSTATE=39501 同时将 UDF 与 Excel for DB2 一起使用

我正在尝试将数据从 excel 获取到 db2 数据库,然后将其导出到 ixf。

这是源代码(ddl文件)

但是我得到

我已经扩大了协议等的所有缓冲区,但问题仍然存在。Excel 文件大约有 190k 行长。

如果我只对返回的函数表进行选择,则问题已经存在,因此甚至没有达到插入。

有任何想法吗?感谢您提前提供的所有帮助。

0 投票
1 回答
127 浏览

excel - 使用 FindNext 的 UDF 似乎在没有警告的情况下中止

我有以下用户定义的函数,它试图在一个范围内找到第 n 个非空单元格:

使用 1 作为参数运行它可以正常工作,大概是因为它没有进入While-loop 并点击FindNext,但是使用任何更大的值作为参数运行它会导致调用它的单元格显示#VALUE!-alert。

查看即时窗口中显示的内容也很奇怪,因为执行Debug.Print后的两条消息FindNext不会打印,尽管我没有收到任何警报。

我在即时窗口中得到的输出,使用 2 作为参数调用的 UDF 只是一个 x:

在此处输入图像描述
调用函数的区域如下所示(第一行是使用 1 作为参数调用的 UDF,第二行是使用 2 作为参数调用的 UDF),而包含数据的区域如下所示

所以我想知道的是,为什么FindNext在范围内找不到第二个非空单元格,为什么函数在没有任何警告的情况下中止?

0 投票
1 回答
2104 浏览

vba - 自定义函数上的 #VALUE 错误

我正在使用自定义函数来查看列是否有删除线。如果该列有删除线,它返回一个布尔值,我删除该行。但是,我收到 #VALUE 错误。我正在检查的列中只有“MASS”这个词。不知道发生了什么。

用户截图

0 投票
3 回答
2283 浏览

vba - 从一列中提取 5 位数字到另一列

我需要帮助在 Excel 2010 中仅从一列到另一列提取 5 位数字。这些数字可以位于字符串的任何位置(字符串的开头、中间的任何位置或末尾)。它们可以在括号或引号内,例如:

(15478) 或“15478”或“15478”或 [15478]

我需要忽略任何小于 5 位的数字,包括以 1 个或多个前导零开头的数字(如 00052、00278 等),并确保将前导零复制到下一列。有人可以帮助我创建公式或 UDF 吗?