永发信息网

ASP合并&求和相同项

答案:2  悬赏:30  手机版
解决时间 2021-03-18 06:40
  • 提问者网友:做自己de王妃
  • 2021-03-17 16:20
现在有一个字符串,如下:
2014-02-07:直行率低:383@2014-02-07:直行率低:383@2014-02-09:直行率低:383@2014-02-10:直行率低:383@2014-02-10:直行率低:383@2014-02-12:部品异常:383@2014-02-12:部品异常:15@2014-02-12:作业不良:18
请问如何在ASP中进行合并&求和相同项,即日期和内容相同的情况下,合计数量。最终达到效果如下:
2014-02-07:直行率低:766@2014-02-09:直行率低:383@2014-02-10:直行率低:766@2014-02-12:部品异常:395@2014-02-12:作业不良:18
最佳答案
  • 五星知识达人网友:西岸风
  • 2021-03-17 17:04
'格式化函数
Function FormatStr(oldStr)
    retStr=""
    oldArr=Split(oldStr,"@")
    If UBound(oldArr)>-1 Then
        I=0
        Do While I<=UBound(oldArr)
            s=Split(oldArr(I),":")
            J=0
            relNum=CInt(s(2))
            Do While J<=UBound(oldArr)
                m=Split(oldArr(J),":")
                If s(0)=m(0)  And s(1)=m(1) Then
                    If J<>I Then
                        relNum=CInt(m(2))+relNum
                    End If
                End If
                J=J+1
            Loop
            If InStr(retStr,s(0)&":"&s(1)&":")<=0 Then
                retStr=retStr&s(0)&":"&s(1)&":"&relNum&" "
            End If
            I=I+1
        Loop
    Else
        retStr=oldStr
    End If
    retStr=Trim(retStr)
    retStr=Replace(retStr," ","@")
    FormatStr=retStr
End Function
'具体调用
Response.Write FormatStr("2014-02-07:直行率低:383@2014-02-07:直行率低:383@2014-02-09:直行率低:383@2014-02-10:直行率低:383@2014-02-10:直行率低:383@2014-02-12:部品异常:383@2014-02-12:部品异常:15@2014-02-12:作业不良:18")
全部回答
  • 1楼网友:鱼忧
  • 2021-03-17 17:48
用条件求和函数:在空白单元格输入以下公式 件数:=sumif(d:d,"612199等",e:e) 净重:=sumif(d:d,"612199等",g:g) 金额:=sumif(d:d,"612199等",k:k)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯