问题标签 [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.
vba - Passing the value and color of the text in a cell to a user defined function
Currently I am experiencing issues with passing the value of a cell and its respective text color to my user defined function. I am passing the references as ranges and using .Font.ColorIndex. This is then used in a IF statement to determine if any are red (value of 3) and then application.caller.fontIndex=3 to turn the cell text red.
The rest of the code is simply formulas that calculate a double from the ranges inputted which is returned as a double.
To clarify, I am trying to determine the color of the text of the referenced input cells. I am not limited to a UDF to do this if I can call the sub from my UDF.
vba - vba range("A1").value 给出了#Value!在函数中输入时
我希望它从 Excel 电子表格调用的 VBA 函数返回多个值,但总是得到错误 #Value!
网上找到的一个例子:
此函数返回#Value!
这行代码可以立即运行。
我发现的所有例子都是子。如何从函数中调用 sub?
vba - 在 Excel 中创建 CountRows 函数
我正在尝试制作一个简单的countRows
函数来计算动态范围内的单元格数量。基本上,如果我在单元格中有值,比如 B2:B500,则计数将返回 499。但是,下次值在单元格 B2:B501 中时,计数将返回 500。但是您不必对单元格中的单元格做任何事情您在公式中输入的。
我想如果我将单元格引用为Variant
,那么任何值都可以接受。然后找到Address
那个单元格的 并返回Count
a 的Range
。但我得到一个#Value
错误。
excel - Application.Caller 到 Range
我有一个包含以下行的功能;
然后,该单元格引用下面的新函数;
我需要更改调用该函数的单元格右侧 10 列的单元格的值,但我无法让它工作。调用该函数的单元格的值变为#VALUE!
我已经尝试了上述代码的一些变体,但无法正常工作,有人知道该怎么做吗?
谢谢
vba - Excel VBA 宏和错误消息
我在 Excel 方面非常缺乏经验,并且在编写宏时遇到了问题。无论我是否设置断点并跳过,它都会停止而没有任何错误对话框。
我错过了什么吗?我必须明确打开错误消息吗?
像这样的东西,在一个模块中:
该函数用于单元格内的公式中,如下所示
我怎样才能让它抱怨被零除?
excel - VBA - 将范围转换为变体
我被困在从范围到变体的转换中。
对于percentageAbove 的功能,我想删除为0 的元素,然后使用percentageAboveHelper 中的输入。例如,如果
xInput 是 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
y输入为 5, 0, 0, 2, 3, 4, 0, 4, 5, 0
我希望传递给 percentAboveHelper 的输入是
x输入:1、4、5、6、8、9
y输入:5、2、3、4、4、5
对于 percentAboveHelper 的功能,它本身就可以正常工作。但是,如果我通过percentageAbove 的变体,我会得到#value!
我试图检查哪一行导致#value!。所以,我在 percentAboveHelper 中写了 msgbox "1" 和 msgbox "2"。我看到如果我只使用 percentAboveHelper 本身,我可以看到消息 1 和 2。但是,如果我使用 percentAbove,我只能看到消息 1。
从这篇文章,在 VBA 函数中从范围切换到数组并返回我看到转换可以简单地通过变体 = range.value 完成。但它在我的情况下不起作用。有什么建议吗?
vba - VBA用户定义函数中的循环错误
我是 VBA 编程的新手,并且已经编写了一个用于插值的 VBA 函数。我尝试从单元格 C17 和 C 列中的其他单元格获取输入到函数“WindPressure”
然后该函数从 C 列(地表高度 z (m) )获取输入并进行插值以获得设计风压,但由于圆形误差而失败。
代码如下:
- 谁能告诉我脚本中的哪一步是错误的
- 无论如何方便测试一个功能?因为它不像直接通过单击 F5 按钮执行的程序
非常感谢您的关注和帮助。
excel - Excel 复制表连同模块代码到新书
我正在尝试将工作表从一个文件复制到另一个文件并让 VBA 随之而来。源表具有基于 UDF 的公式。它们位于源书中的一个模块中。
当我复制工作表时,模块不会出现在目标文件中,代码也不会出现。所以我尝试将代码放在源文件的工作表中。现在代码确实出现了,但 UDF 不起作用。我得到(我认为)#NAME?错误,或类似的东西。我应该提到,如果相关的话,这些 UDF 会遍历工作簿中的选项卡。在这种情况下,工作表级代码不起作用听起来对吗?除了模块,我从未将 VBA 放在任何地方。
如果工作表代码不起作用,我会被一个模块卡住。我意识到我可以从源文件中导出 Module1,然后导入到目的地。源模块永远不应该改变,所以我只能这样做一次。这听起来像是最轻松的解决方案吗?
我试图避免使用宏,除非它简短而简单。与不变的源文件不同,目标文件名每天都在变化,即每次打开它都需要接收模块(和工作表)。这听起来可行吗?
vba - 使用VBA在Excel中的范围到列
我正在尝试创建如下函数:
输入:范围
输出:包含范围内所有非空单元格的列。
例如,在输入
输出应该是
这是我的试验:
我知道 res 是一维的(因此,结果是一行而不是一列)对我有用。所以,问题在于它是二维的。
另外,我知道 decleration 存在具体问题
但我不知道有什么问题。
提前致谢!