注册 登录
编程论坛 VFP论坛

每天两人值班,如何计算每人值班天数?

王咸美 发布于 2023-04-01 10:58, 339 次点击
现有下列表格文件,如何计算每人值班天数?并将它写入表文件Zbts.dbf中【字段名为:值班人员 C(10),值班天数 N(4)】请高手赐教,万分感谢!!!
只有本站会员才能查看附件,请 登录
10 回复
#2
sdta2023-04-01 11:07
把表发上来
#3
王咸美2023-04-01 11:40
电脑不在身边,无法上传表文件。假如就这几行数据,可以测试吗?请予指导,谢谢!
#4
sdta2023-04-01 11:42
只弄了5条数据供测试
程序代码:
CREATE CURSOR t1 (值班日期 C(6), 值班人员 C(10))
INSERT INTO t1 VALUES ("3月1日", "张飞、李逵")
INSERT INTO t1 VALUES ("3月2日", "曹操、刘备")
INSERT INTO t1 VALUES ("3月3日", "李逵、刘备")
INSERT INTO t1 VALUES ("3月4日", "孙权、曹操")
INSERT INTO t1 VALUES ("3月5日", "李逵、孙权")
CREATE CURSOR zbts (值班人员 C(10), 值班天数 N(4))
INDEX ON 值班人员 TAG sy
SELECT t1
SCAN
    FOR ln = 1 TO ALINES(laStr, 值班人员, 1+4, "、")
        IF SEEK(laStr(ln), "zbts", "sy") = .T.
            REPLACE 值班天数 WITH 值班天数 + 1 IN zbts
        ELSE
            INSERT INTO zbts VALUES (laStr(ln), 1)
        ENDIF
    ENDFOR
ENDSCAN
SELECT zbts
DELETE TAG sy
BROWSE

结果
只有本站会员才能查看附件,请 登录
#5
王咸美2023-04-01 11:45
@sdta 谢谢!!!
#6
wxzd1232023-04-01 13:29
回复 4楼 sdta
#7
schtg2023-04-01 16:53
回复 4楼 sdta
好!
#8
sam_jiang2023-04-02 13:58
COUNT ALL FOR "李逵" $ 值班人员 TO ncount
?ncount
#9
ybq10142023-04-17 16:36
回复 楼主 王咸美
这样的事情,直接在Excel里面完成,没必要编程。
#10
ybq10142023-04-17 16:37
回复 楼主 王咸美
Excel中countif函数可以完成
#11
王咸美2023-04-17 22:38
谢谢!
1