Excel VBA未经检验的子错误结束
我发现以下VBA代码用于对彩色单元格求和,但在倒数第二行出现意外的语句结束错误:Excel VBA未经检验的子错误结束,excel,vba,function,Excel,Vba,Function,我发现以下VBA代码用于对彩色单元格求和,但在倒数第二行出现意外的语句结束错误: Function SumByColor(CellColor As Range, SumRange As Range) Application.Volatile Dim ICol As Integer Dim TCell As Range ICol = CellColor.Interior.ColorIndex For Each TCell In SumRange
Function SumByColor(CellColor As Range, SumRange As Range)
Application.Volatile
Dim ICol As Integer
Dim TCell As Range
ICol = CellColor.Interior.ColorIndex
For Each TCell In SumRange
If ICol = TCell.Interior.ColorIndex Then
SumByColor = SumByColor + TCell.Value
End If
Next TCell
End Function
Sub Count_red()
=SumByColor(AC4,J2:AK1725)
End Sub
编辑:我根据你的建议调整了最后一点
Sub Count_red()
函数Count_red()为双精度
Count_red=SumByColor([AC4],[J2:A1725])
端函数
末端接头
尝试运行代码时出现的新错误消息:“检测到不明确的名称:Count_red()”
这是一项毫无意义的任务
根据这些名字,我猜应该是
Function Count_red()
Count_red=SumByColor([AC4],[J2:AK1725])
End Function
这是一项毫无意义的任务
根据这些名字,我猜应该是
Function Count_red()
Count_red=SumByColor([AC4],[J2:AK1725])
End Function
我想我们离这里越来越近了。:)我将您的代码粘贴到上面的代码中。然而,我得到了一个新的错误,说“预期:列表分隔符或”。当我删除范围时,只将J2保留在J2:AK1725上,他似乎不再有问题了。但是,我需要他在脚本中使用Excel应用程序的当前上下文搜索一个范围..
SumByColor(“AC4”,“J2:AK1725”)
或传递一个显式的range
对象。@Mattperyrange(“AC4”),range(“J2:AK1725”)
,因为sub还需要一个范围对象而不是地址:)@ykjk,当您根据此处的建议修改代码时,请回答您的问题,使其包含您当前尝试使用的代码,否则任何人都很难帮助您。我尝试了SumByColor(Range(“AC4”)、Range(“J2:A1725”)
以及SumByColor([AC4]、[J2:AK1725])
这两种方法似乎都很好,但当我尝试运行Makro时,会弹出错误消息“检测到不明确的名称:Count_red()”。我想我们离这里越来越近了。:)我将您的代码粘贴到上面的代码中。然而,我得到了一个新的错误,说“预期:列表分隔符或”。当我删除范围时,只将J2保留在J2:AK1725上,他似乎不再有问题了。但是,我需要他在脚本中使用Excel应用程序的当前上下文搜索一个范围..SumByColor(“AC4”,“J2:AK1725”)
或传递一个显式的range
对象。@Mattperyrange(“AC4”),range(“J2:AK1725”)
,因为sub还需要一个范围对象而不是地址:)@ykjk,当您根据此处的建议修改代码时,请回答您的问题,使其包含您当前尝试使用的代码,否则任何人都很难帮助您。我尝试了SumByColor(Range(“AC4”)、Range(“J2:A1725”)
以及SumByColor([AC4]、[J2:AK1725])
这两种方法似乎都很好,但当我尝试运行Makro时,会弹出错误消息“检测到不明确的名称:Count_red()”。