gpt4 book ai didi

vba - WorksheetFunction.CountA 没有返回正确的值

转载 作者:行者123 更新时间:2023-12-04 21:25:41 27 4
gpt4 key购买 nike

我要做的是遍历包含工作表名称的范围,如果单元格不为空,则添加 CountA 的结果count 变量的函数。

所以计数变量应该等于B9:B28范围内的非空白单元格的数量。在我正在迭代的工作表上,但奇怪的是,该值等于我正在经历的范围内的非空单元格的数量( sheet1!d5:d24 )。

我究竟做错了什么?这是我正在使用的代码:

For Each c In Worksheets("Sheet1").Range("d5:d24").Cells
If Not IsEmpty(c) Then
count = count + WorksheetFunction.CountA(c & "!b9:b28")
End If
Next

我尝试了一种替代方法来遍历第二个范围,如果单元格不为空,则将变量增加 1,但这会导致运行时错误 13 类型不匹配错误。这就是我现在正在做的事情:
    For Each c In Worksheets("Sheet1").Range("d5:d24")
If Not IsEmpty(c) Then
For Each c2 In Worksheets(c).Range("b9:b28")
If Not IsEmpty(c2) Then
'count = count + WorksheetFunction.CountA(c & "!b9:b28")
count = count + 1
End If
Next
End If
Next

请帮帮我。非常感谢所有抽出时间回复的人。

最佳答案

基于@Peter Albert 和@Peter L. 的评论,终于让它工作了。正确的代码是:

For Each c In Worksheets("Sheet1").Range("d5:d24").Cells
If Not IsEmpty(c.Value) Then
count = count + WorksheetFunction.CountA(c.Value & "!b9:b28")
End If
Next

非常感谢大家:)

关于vba - WorksheetFunction.CountA 没有返回正确的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14897423/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com