📋 前提假设
假设你的Excel表格结构如下:
| 病历号 | 患者姓名 | 就诊类型 | 所属科室 | 医生 | 来源渠道 | 就诊日期 | 收款金额 |
|---|
| P001 | 张三 | 初诊 | 基础科 | 张医生 | 朋友介绍 | 2026-01-05 | 1000 |
| P001 | 张三 | 复诊 | 基础科 | 张医生 | 朋友介绍 | 2026-02-10 | 1500 |
| P002 | 李四 | 初诊 | 基础科 | 李医生 | 搜索引擎 | 2026-01-10 | 1200 |
| ... | ... | ... | ... | ... | ... | ... | ... |
1️⃣ 算法1:基础复诊率
场景1:全院总指标
计算公式
= (总复诊人次 / 总初诊人次) × 100
Excel公式
假设:
A:A = 病历号
C:C = 就诊类型
H:H = 收款金额
=(COUNTIF(C:C,"复诊")/COUNTIF(C:C,"初诊"))*100
或者按收款金额计算:
=(SUMIF(C:C,"复诊",H:H)/SUMIF(C:C,"初诊",H:H))*100
示例结果
初诊人数:1000人
复诊人数:3000人
初复诊比例:300%
场景2:按科室计算
假设数据:
C:C = 就诊类型
D:D = 科室
H:H = 收款金额
=(SUMIF(C:C,"复诊",H:H)/SUMIF(C:C,"初诊",H:H))*100
科室分析表
| 科室 | 初诊人次 | 复诊人次 | 复诊率 |
|---|
| 基础科 | =COUNTIF(D:D, "基础科") | =COUNTIFS(D:D, "基础科", C:C, "复诊") | =(C3/B3)*100 |
| 种植科 | =COUNTIF(D:D, "种植科") | =COUNTIFS(D:D, "种植科", C:C, "复诊") | =(C4/B4)*100 |
| 正畸科 | =COUNTIF(D:D, "正畸科") | =COUNTIFS(D:D, "正畸科", C:C, "复诊") | =(C5/B5)*100 |
2️⃣ 算法2:平均就诊次数
计算公式
= 总就诊人次 / 总患者人数
Excel公式
=(COUNTA(A:A)/COUNTUNIQUE(A:A))
或者按收款金额计算:
=(SUM(H:H)/COUNTUNIQUE(A:A))
示例
总就诊人次:10000人次
总患者人数:3500人
平均就诊次数:2.86次
3️⃣ 算法3:按时间段复诊率
场景1:按月计算
假设:
A:A = 病历号
G:G = 就诊日期
C:C = 就诊类型
D:D = 科室
月度分析表
| 月份 | 初诊人次 | 复诊人次 | 复诊率 |
|---|
| 2026-01 | =COUNTIFS(G:G, ">=2026-01-01", G:G, "<=2026-01-31", C:C, "初诊") | =COUNTIFS(G:G, ">=2026-01-01", G:G, "<=2026-01-31", C:C, "复诊") | =(C3/B3)*100 |
| 2026-02 | =COUNTIFS(G:G, ">=2026-02-01", G:G, "<=2026-02-28", C:C, "初诊") | =COUNTIFS(G:G, ">=2026-02-01", G:G, "<=2026-02-28", C:C, "复诊") | =(C4/B4)*100 |
| 2026-03 | =COUNTIFS(G:G, ">=2026-03-01", G:G, "<=2026-03-31", C:C, "初诊") | =COUNTIFS(G:G, ">=2026-03-01", G:G, "<=2026-03-31", C:C, "复诊") | =(C5/B5)*100 |
场景2:按季度计算
季度分析表
| 季度 | 初诊人次 | 复诊人次 | 复诊率 |
|---|
| Q1 | =SUM(COUNTIFS(G:G, {">=2026-01-01", ">=2026-02-01", ">=2026-03-01"}, G:G, {"<=2026-01-31", "<=2026-02-28", "<=2026-03-31"}, C:C, "初诊")) | =SUM(COUNTIFS(G:G, {">=2026-01-01", ">=2026-02-01", ">=2026-03-01"}, G:G, {"<=2026-01-31", "<=2026-02-28", "<=2026-03-31"}, C:C, "复诊")) | =(C3/B3)*100 |
| Q2 | =SUM(COUNTIFS(G:G, {">=2026-04-01", ">=2026-05-01", ">=2026-06-01"}, G:G, {"<=2026-04-30", "<=2026-05-31", "<=2026-06-30"}, C:C, "初诊")) | =SUM(COUNTIFS(G:G, {">=2026-04-01", ">=2026-05-01", ">=2026-06-01"}, G:G, {"<=2026-04-30", "<=2026-05-31", "<=2026-06-30"}, C:C, "复诊")) | =(C4/B4)*100 |
4️⃣ 算法4:按治疗周期复诊率
场景1:种植治疗周期
假设:
A:A = 病历号
G:G = 首次就诊日期
C:C = 就诊类型
D:D = 治疗项目
治疗周期分析表
| 项目 | 初诊人数 | 3个月后复诊 | 6个月后复诊 | 12个月后复诊 |
|---|
| 种植 | =COUNTIF(D:D, "种植") | =COUNTIFS(A:A, "P*", G:G, ">=2024-12-01") | =COUNTIFS(A:A, "P*", G:G, ">=2026-03-01") | =COUNTIFS(A:A, "P*", G:G, ">=2026-09-01") |
| 正畸 | =COUNTIF(D:D, "正畸") | =COUNTIFS(A:A, "J*", G:G, ">=2024-12-01") | =COUNTIFS(A:A, "J*", G:G, ">=2026-03-01") | =COUNTIFS(A:A, "J*", G:G, ">=2026-09-01") |
计算各周期复诊率
| 项目 | 3个月复诊率 | 6个月复诊率 | 12个月复诊率 |
|---|
| 种植 | =(C3/D3)*100 | =(E3/D3)*100 | =(G3/D3)*100 |
| 正畸 | =(C4/D4)*100 | =(E4/D4)*100 | =(G4/D4)*100 |
5️⃣ 算法5:按科室复诊率
场景1:全院科室对比
假设:
科室复诊率表
| 科室 | 初诊人次 | 复诊人次 | 复诊率 |
|---|
| 基础科 | =COUNTIF(D:D, "基础科") | =COUNTIFS(D:D, "基础科", C:C, "复诊") | =(E3/D3)*100 |
| 种植科 | =COUNTIF(D:D, "种植科") | =COUNTIFS(D:D, "种植科", C:C, "复诊") | =(E4/D4)*100 |
| 正畸科 | =COUNTIF(D:D, "正畸科") | =COUNTIFS(D:D, "正畸科", C:C, "复诊") | =(E5/D5)*100 |
| 洁牙科 | =COUNTIF(D:D, "洁牙科") | =COUNTIFS(D:D, "洁牙科", C:C, "复诊") | =(E6/D6)*100 |
6️⃣ 算法6:按医生复诊率
场景1:医生工作量统计
假设:
医生复诊率表
| 医生 | 初诊人次 | 复诊人次 | 复诊率 | 平均就诊次数 |
|---|
| 张医生 | =COUNTIF(E:E, "张医生") | =COUNTIFS(E:E, "张医生", C:C, "复诊") | =(C3/B3)*100 | =COUNTA(A:A)/COUNTUNIQUE(A:A) |
| 李医生 | =COUNTIF(E:E, "李医生") | =COUNTIFS(E:E, "李医生", C:C, "复诊") | =(C4/B4)*100 | =COUNTA(A:A)/COUNTUNIQUE(A:A) |
| 王医生 | =COUNTIF(E:E, "王医生") | =COUNTIFS(E:E, "王医生", C:C, "复诊") | =(C5/B5)*100 | =COUNTA(A:A)/COUNTUNIQUE(A:A) |
7️⃣ 算法7:按来源渠道复诊率
场景1:营销渠道效果分析
假设:
渠道复诊率表
| 来源渠道 | 初诊人次 | 复诊人次 | 复诊率 |
|---|
| 朋友介绍 | =COUNTIF(F:F, "朋友介绍") | =COUNTIFS(F:F, "朋友介绍", C:C, "复诊") | =(C3/B3)*100 |
| 搜索引擎 | =COUNTIF(F:F, "搜索引擎") | =COUNTIFS(F:F, "搜索引擎", C:C, "复诊") | =(C4/B4)*100 |
| 社交媒体 | =COUNTIF(F:F, "社交媒体") | =COUNTIFS(F:F, "社交媒体", C:C, "复诊") | =(C5/B5)*100 |
| 线下活动 | =COUNTIF(F:F, "线下活动") | =COUNTIFS(F:F, "线下活动", C:C, "复诊") | =(C6/B6)*100 |
8️⃣ 算法8:患者留存率
场景1:年度留存率
假设:
A:A = 病历号
G:G = 首次就诊日期
H:H = 最后就诊日期
D:D = 科室
方法1:按患者数量计算
年度留存率表
| 期间 | 期初患者数 | 期末患者数 | 留存率 |
|---|
| 2026年初 | =COUNTUNIQUE(A:A) | =COUNTUNIQUE(A:A) | =(C3/B3)*100 |
| 2026年末 | - | - | - |
方法2:按科室计算
科室留存率表
| 科室 | 期初患者数 | 期末患者数 | 留存率 |
|---|
| 基础科 | =COUNTUNIQUE(A:A) | =COUNTUNIQUE(A:A) | =(C3/B3)*100 |
| 种植科 | =COUNTUNIQUE(A:A) | =COUNTUNIQUE(A:A) | =(C4/B4)*100 |
9️⃣ 算法9:加权复诊率
场景1:全院综合评估
假设:
C:C = 就诊类型
D:D = 科室
E:E | 科室 | 复诊率 | 权重 | 加权贡献 |
|---|
| 基础科 | =COUNTIF(D:D, "基础科") | =COUNTIFS(D:D, "基础科", C:C, "复诊") | 0.5 | =(E3*D3)*F3 |
| 种植科 | =COUNTIF(D:D, "种植科") | =COUNTIFS(D:D, "种植科", C:C, "复诊") | 0.2 | =(E4*D4)*F4 |
| 正畸科 | =COUNTIF(D:D, "正畸科") | =COUNTIFS(D:D, "正畸科", C:C, "复诊") | 0.3 | =(E5*D5)*F5 |
加权复诊率总计
=SUM(G3:G5)
示例:
基础科:2.5 × 0.5 = 1.25
种植科:0.8 × 0.2 = 0.16
正畸科:1.2 × 0.3 = 0.36
加权复诊率:1.77
🔟 算法10:组合指标(综合评估)
场景:多维度综合分析
指标表
| 指标名称 | 计算公式 | 当前值 |
|---|
| 总复诊率 | =(COUNTIF(C:C, "复诊")/COUNTIF(C:C, "初诊"))*100 | 300% |
| 平均就诊次数 | =COUNTA(A:A)/COUNTUNIQUE(A:A) | 2.86次 |
| 平均初复诊比例 | =(COUNTIFS(C:C, "复诊")/COUNTIFS(C:C, "初诊"))*100 | 300% |
| 综合评分 | =(B3+B4+B5)/3 | 298% |
📊 完整数据表模板
使用这个模板
| 病历号 | 患者姓名 | 就诊类型 | 所属科室 | 医生 | 来源渠道 | 就诊日期 | 首次日期 | 最后日期 | 收款金额 | 复诊标记 |
|---|
| P001 | 张三 | 初诊 | 基础科 | 张医生 | 朋友介绍 | 2026-01-05 | 2026-01-05 | 2026-01-10 | 1000 | 0 |
| P001 | 张三 | 复诊 | 基础科 | 张医生 | 朋友介绍 | 2026-02-10 | 2026-01-05 | 2026-02-10 | 1500 | 1 |
| P002 | 李四 | 初诊 | 基础科 | 李医生 | 搜索引擎 | 2026-01-10 | 2026-01-10 | - | 1200 | 0 |
| P003 | 王五 | 初诊 | 种植科 | 张医生 | 朋友介绍 | 2026-01-15 | 2026-01-15 | 2026-04-15 | 5000 | 0 |
| P003 | 王五 | 复诊 | 种植科 | 张医生 | 朋友介绍 | 2026-04-15 | 2026-01-15 | 2026-04-15 | 3000 | 1 |
🎯 快速复制粘贴公式
所有科室复诊率
# 在单元格 D2(科室) 填入:基础科种植科正畸科洁牙科牙周科口腔外科# 在单元格 B2 填入:=COUNTIF($D:$D,A2)# 在单元格 C2 填入:=COUNTIFS($D:$D,A2,$C:$C,"复诊")# 在单元格 D2 填入:=(C2/B2)*100
所有医生复诊率
# 在单元格 E2(医生) 填入:张医生李医生王医生赵医生钱医生# 在单元格 B2 填入:=COUNTIF($E:$E,A2)# 在单元格 C2 填入:=COUNTIFS($E:$E,A2,$C:$C,"复诊")# 在单元格 D2 填入:=(C2/B2)*100
所有渠道复诊率
# 在单元格 F2(渠道) 填入:朋友介绍搜索引擎社交媒体线下活动老客户转介绍# 在单元格 B2 填入:=COUNTIF($F:$F,A2)# 在单元格 C2 填入:=COUNTIFS($F:$F,A2,$C:$C,"复诊")# 在单元格 D2 填入:=(C2/B2)*100
💡 提示和技巧
1. 使用数据透视表
数据透视表是更简单的方法:
选中数据区域
插入 → 数据透视表
将"科室"拖到"行"
将"就诊类型"拖到"值",设为"计数"
将"就诊类型"拖到"筛选"
就可以轻松看到各个科室的初诊和复诊数量
2. 使用条件格式
高亮显示复诊率低的科室:
选中复诊率列
条件格式 → 突出显示单元格规则 → 小于
输入:200
设置格式为红色
3. 使用图表
创建复诊率对比图:
选中科室、初诊人次、复诊人次列
插入 → 图表 → 簇状柱形图
自动生成对比图
📝 常见问题
Q1: COUNTIF和COUNTIFS有什么区别?
COUNTIF:只能按一个条件统计
=COUNTIF(C:C,"初诊")
COUNTIFS:可以按多个条件统计
=COUNTIFS(D:D,"基础科",C:C,"复诊")
Q2: 如何按日期范围统计?
使用AND条件:
=COUNTIFS(G:G,">=2026-01-01",G:G,"<=2026-01-31",C:C,"初诊")
Q3: 如何处理重复数据?
使用COUNTUNIQUE去重:
=COUNTUNIQUE(A:A)
Q4: 如何计算复诊率百分比?
=(复诊人数 / 初诊人数)*100
或者:
=复诊人数 / 初诊人数
Excel会自动显示为百分比格式
Q5: 如何快速生成所有公式的表格?
复制粘贴上面的模板,然后:
选中整列数据
数据 → 分列 → 完成
可以自由编辑
🔗 函数参考
📌 注意事项
数据准确性:确保数据没有错误和重复
格式一致性:就诊类型要统一(如"初诊"、"复诊")
列标题正确:每列都要有清晰的标题
定期更新:数据定期更新,保持最新
备份重要:修改前先备份原文件
✅ 完整示例
示例数据
| 病历号 | 患者姓名 | 就诊类型 | 所属科室 | 医生 | 来源渠道 | 就诊日期 | 收款金额 |
|---|
| P001 | 张三 | 初诊 | 基础科 | 张医生 | 朋友介绍 | 2026-01-05 | 1000 |
| P001 | 张三 | 复诊 | 基础科 | 张医生 | 朋友介绍 | 2026-02-10 | 1500 |
| P002 | 李四 | 初诊 | 基础科 | 李医生 | 搜索引擎 | 2026-01-10 | 1200 |
| P003 | 王五 | 初诊 | 种植科 | 张医生 | 朋友介绍 | 2026-01-15 | 5000 |
| P003 | 王五 | 复诊 | 种植科 | 张医生 | 朋友介绍 | 2026-04-15 | 3000 |
| P004 | 赵六 | 初诊 | 正畸科 | 李医生 | 社交媒体 | 2026-01-20 | 8000 |
| P004 | 赵六 | 复诊 | 正畸科 | 李医生 | 社交媒体 | 2026-02-25 | 2000 |
计算结果
全院总指标:
按科室:
基础科:初诊2人,复诊1人,复诊率50%
种植科:初诊1人,复诊1人,复诊率100%
正畸科:初诊1人,复诊1人,复诊率100%
按医生:
张医生:初诊2人,复诊2人,复诊率100%
李医生:初诊2人,复诊1人,复诊率50%
适用版本:Excel 2016 或更高版本