求助:基于复选框优化Sparkline进度条及修复失效公式
解决方案
1. 修复多列复选框统计问题
你的原公式错误在于COUNTIF无法直接接收多个独立范围作为参数,需要用FLATTEN将多列合并为一维数组,让COUNTIF能统计所有列的勾选情况:
=COUNTIF(FLATTEN(B5:B24,E5:E24,H5:H24,K5:K24), TRUE)
2. 带自定义颜色的进度条公式
将上述统计结果代入SPARKLINE,同时指定颜色参数(注意键值对的格式用分号分隔):
=SPARKLINE(COUNTIF(FLATTEN(B5:B24,E5:E24,H5:H24,K5:K24),TRUE), {"charttype","bar";"color","#dac4b1";"max",80})
3. 显示进度百分比
在进度条上方的单元格输入以下公式,自动计算并显示百分比:
=TEXT(COUNTIF(FLATTEN(B5:B24,E5:E24,H5:H24,K5:K24),TRUE)/80, "0%")
如果需要保留一位小数,可改用:
=ROUND(COUNTIF(FLATTEN(B5:B24,E5:E24,H5:H24,K5:K24),TRUE)/80*100,1)&"%"
关键说明
FLATTEN函数会把多列数据合并成一列,解决了COUNTIF无法跨多列统计的问题;SPARKLINE的参数格式要求键和值用逗号分隔,不同参数对之间用分号分隔,确保颜色设置生效;- 总复选框数固定为80(4列×20行),因此
max参数设为80,保证进度条比例准确。
内容的提问来源于stack exchange,提问作者Lucía Arcos
相关产品推荐
相关产品推荐

