| 网站首页 | 业界新闻 | 群组 | 交易 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
共有 119 人关注过本帖
标题:如何统计行的值
只看楼主 加入收藏
杂七杂八
Rank: 1
等 级:新手上路
帖 子:57
专家分:0
注 册:2018-2-20
结帖率:100%
  问题点数:20  回复次数:4   
如何统计行的值
一张考勤表,现要统计出个数并将结果填入表中
A1,A2,A3,A4 表示每月的号
如何做到
附件: 您没有浏览附件的权限,请 登录注册
5 天前 20:34
donotspam
Rank: 1
等 级:新手上路
帖 子:38
专家分:5
注 册:2016-2-28
  得分:0 
不难.
遍历每条记录,统计填表.
A1,A2,A3,A4,...可考虑用循环+宏变量匹配字段名.
5 天前 21:31
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:182
帖 子:7547
专家分:18232
注 册:2012-2-5
  得分:0 
这个表本身设计就不科学,应该如下设计
xh
xm
dm
日期
事由
最后将结果存入统计表中

坚守VFP最后的阵地
5 天前 21:47
yewxj
Rank: 3Rank: 3
等 级:论坛游侠
威 望:2
帖 子:144
专家分:110
注 册:2015-6-18
  得分:0 
IF !USED('tab_a')
    USE tab_a ALIAS tab_a IN 0
ENDIF

_S = 4    &&从第4列开始统计
_E = 9    &&统计到第9列结束

SELECT tab_a
_F = AFIELDS(_FArr,'tab_a')    &&将字段信息存入数组_FArr
SCAN
    _C = ''                &&用于存储每行字符
    FOR ii = _S TO _E      &&从第4列开始统计
        _C = _C + ALLTRIM(&_FArr[ii,1])
    ENDFOR
    REPLACE ALL 病假 WITH ALLTRIM(STR(OCCURS('病',_C))),事假 WITH ALLTRIM(STR(OCCURS('事',_C))),旷工 WITH ALLTRIM(STR(OCCURS('旷',_C))),探亲 WITH ALLTRIM(STR(OCCURS('探',_C)))
ENDSCAN  
5 天前 22:31
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:182
帖 子:7547
专家分:18232
注 册:2012-2-5
  得分:0 
CLOSE DATABASES
USE tab_a
BLANK FIELDS 病假,事假,旷工,探亲 ALL
cStr1 = ""
SCAN
    FOR i = 4 TO 9
        cStr = ALLTRIM(EVALUATE(FIELD(i)))
        IF EMPTY(cStr)
            LOOP
        ENDIF
        DO CASE
            CASE cStr $ "病假" OR cStr $ "事假"
                cStr1 = cStr + "假"
            CASE cStr $ "旷工"
                cStr1 = "旷工"
            CASE cStr $ "探亲"
                cStr1 = "探亲"
        ENDCASE
        REPLACE (cStr1) WITH TRANSFORM(INT(VAL(EVALUATE(cStr1))) + 1)
    ENDFOR
ENDSCAN
BROWSE
USE IN tab_a

坚守VFP最后的阵地
5 天前 22:36







关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.708163 second(s), 8 queries.
Copyright©2004-2019, BCCN.NET, All Rights Reserved