答案1
答案2
有一种方法可以不使用 VBA 来实现这一点,至少可以这么说。它需要一个额外的步骤,那就是将选定的数据加粗。下面的方法将计算定义范围内所有加粗的单元格:
- 定义命名范围是否加粗作为
=LAMBDA(r, GET.CELL(20,r))
- 使用此公式计算最大列数
=MAX(BYROW(data,LAMBDA(r, SUM(BYCOL(r,LAMBDA(c,--IsBold(c)))))))+RAND()*0
- 使用此公式来计算最大行数
=MAX(BYCOL(data,LAMBDA(r, SUM(BYROW(r,LAMBDA(c,--IsBold(c)))))))+RAND()*0
- 使用此公式计算粗体单元格的数量
=SUM(BYROW(data,LAMBDA(r, SUM(BYCOL(r,LAMBDA(c,--IsBold(c)))))))+RAND()*0
在哪里数据例如$A$1:$F$24。
要求:
- 必须拥有 Office 365 才能使用较新的数组函数。
- 将文件保存为启用宏的 .xlsm 文件,以便 GET.CELL 函数正常工作
- 更改粗体格式后,按 F9 刷新计算(仅供参考,更改格式是非易失性的,不会触发自动重新计算 - 这就是添加 RAND()*0 的原因,使公式变得易失性并强制 Excel 重新计算)。