excel - 如果它包含 Excel 中的填充单元格,则计算列
问题描述
这是一个简单的问题,但我无法在任何地方找到答案。
因此,假设我有 range A1:D20
,在 A 列和 C 列中至少有一个值。因此,至少有一个填充单元格的列数为 2。
如何获得一个公式来计算一个范围内至少包含一个值的列数?我也想用标准来计算列,但目前这是次要的。
我有至少 35 列的大范围,所以更短的表达式会非常有帮助。
解决方案
我很确定一个好的搜索会给你更多的结果,但试试下面:
=IF(COUNTA("A1:A20")>0,1,0)+IF(COUNTA("B1:B20")>0,1,0)+IF(COUNTA("C1:C20")>0,1,0)+IF(COUNTA("D1:D20")>0,1,0)
编辑
好吧,我想如果你想在没有任何辅助行的情况下使用 COUNTA 函数,那么一种平滑的方式可能是 UDF,可能像这样:
Function CountColumns(RNG As Range) As Long
Dim COL As Range
For Each COL In RNG.Columns
If Application.WorksheetFunction.CountA(COL) > 0 Then CountColumns = CountColumns + 1
Next COL
End Function
推荐阅读
- ios - Siri 快捷方式响应模板不起作用
- python - 如何在 Python 中拆分字典数组?
- java - 在句柄块中执行 CompletionStage 的正确方法是什么?
- ms-access - 从 url 不变的网页源中抓取数据
- css - 透明背景覆盖 box-shadow
- android - 单击按钮时删除recyclerview中的所有内容
- typescript - TypeScript 函数接受一个没有特定键的对象
- javascript - 在扩展面板上选择收音机会更改另一个组件 vuetify 中的属性
- batch-file - 批处理文件从不同的子文件夹中随机选择相同文件名的文件到一个文件夹
- kotlin - 如何让我的 JS 测试出现在 Kotlin Multiplatform 项目中