【发布时间】:2014-07-13 09:19:56
【问题描述】:
我正在处理带有一些 UDF 的电子表格。第一次在 excel 中尝试任何复杂的东西,我不确定我是否正确地做到了这一点。以下公式返回 #VALUE 错误。
=IF(INDEX(findRed(C3:L11), 1, 1)=3:3,3500000+35000000*0.1, "")
findRed 是一个 UDF,用于查看为具有红色背景颜色的单元格指定的范围。我想要做的是确定 findRed 函数返回的任何单元格是否在工作簿的第三行。最后的数学是我打算使用的数字,但我打算用 findRed 返回的 Range 制作一个相当大的嵌套 IF OR AND 语句,我什至无法让第一部分工作。我在这里做错了什么?
编辑:findRed()
Public Function findRed(myRange As Range) As Range
Dim redRange As Range, cell As Range
Application.Volatile
For Each cell In myRange
If cell.Interior.ColorIndex = 3 Then
If redRange Is Nothing Then
Set redRange = cell
Else
Set redRange = Application.Union(redRange, cell)
End If
End If
Next cell
Set findRed = redRange
End Function
【问题讨论】:
-
发布 findRed() 代码。
-
发布 findRed() 函数
标签: excel if-statement excel-formula vba