gpt4 book ai didi

excel - Selection.SpecialCells(xlCellTypeVisible).Count 在过滤器产生单行结果时给出溢出错误

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

使用 Selection.SpecialCells(xlCellTypeVisible).Count 时要计算单列过滤数据,它适用于多行结果。但是当只显示 1 行时,它会给我一个溢出错误或者我得到 count = 107564 (我忘记了实际数字)。

最佳答案

.CountLong 类型但是较新的 Excel 版本每个工作表的单元格(17,179,869,184 单元格)比 Long 多。可以处理(最大 2,147,483,647)。因此,如果您选择大量的 ouf 单元格,它们会超过 Long因此你会得到一个溢出错误。
要解决此问题,您需要使用 Range.CountLarge property而不是 Range.Count property类型为 LongLong并且可以处理这么多的细胞。


数据类型
存储大小
范围


Long(长整数)
4字节
-2,147,483,648 至 2,147,483,647

LongLong(LongLong 整数)
8 个字节
-9,223,372,036,854,775,808 到 9,223,372,036,854,775,807(仅在 64 位平台上有效。)


表源:Office VBA Reference - Data type summary .
这不应该引发溢出错误:

Selection.SpecialCells(xlCellTypeVisible).CountLarge
有一个简单的规则:在计算行数或列数时 .Count很好,但每次您计算单元格(多行或多列)时,您需要确保使用 .CountLarge为了安全。

关于excel - Selection.SpecialCells(xlCellTypeVisible).Count 在过滤器产生单行结果时给出溢出错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68029930/

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