请帮忙解决VB中条件累加的代码
如题, 具体如下:MySQL 数据库有一串Data String有99个循环值(每个值叫Data Line),而在每个Data Line中又有10个值分别为5组的循环值(Code & Amount)。
要实现的是,把所有99个Data Line内 相同的 Code所对应的Amount进行累加,而且在输出行里 相同的Code 只能输出一次。
如:DataLine1 前面有一些无用字符串, PR1, 100, PR2, 200, CO45, 300, CO223, 400, OAB5, 500 数据之间是chr(240)分隔
DataLine2 前面有一些无用字符串, PR1, 80, PR2, 90, CO45, 120, CO223, 180, OAB5, 260 数据之间是chr(240)分隔
实现为 CAS*PR*1*180*2*290~
CAS*CO*45*420*223*580~
CAS*CO*223*760~
我曾经用for intI......next intI写过,发现2个循环内的逻辑搞得不是很明白,请各位高手不吝赐教。
谢谢。 mysql vb string --------------------编程问答-------------------- 没看懂楼主说的是什么意思。
--------------------编程问答-------------------- 此需求的核心部分是将数据项汇总累加。至于楼主将 PR1, PR2 等再汇总成 PR,1,2 以及重组为 CAS 起始的串,都可以下一步再做。
最简单的方法就是利用 ListBox 的列表项查找及利用 ItemData 属性(Long 类型)做逐项累加。
--------------------编程问答-------------------- 多谢解答,我先用你的方法试一下。 --------------------编程问答-------------------- 我用你的代码了,可是弹出variable not defined,就是List变量没定义。请解答一下为什么? --------------------编程问答--------------------
Private Declare Function SendMessagebyString Lib _
"user32" Alias "SendMessageA" (ByVal hWND As Long, _
ByVal wMsg As Long, ByVal wParam As Long, _
ByVal lParam As String) As Long
Private Const LB_FINDSTRINGEXACT = &H1A2 '在 ListBox 中精确查找
Private Sub Command1_Click()
Dim i As Long, j As Long, n As Long
Dim strItem() As String
List1.Clear
For i = 1 To 99
strItem = Split(Data_Line(i), ",")
For j = 0 To 8 Step 2
strItem(j) = Trim(Item(j))
strItem(j + 1) = Trim(Item(j + 1))
n = SendMessagebyString(List1.hWnd, LB_FINDSTRINGEXACT, -1, strItem(j))
If n = -1 Then
List1.AddItem strItem(j)
List1.ItemData(List1.NewItem) = Val(strItem(j + 1))
Else
List1.ItemData(n) = List1.ItemData(n) + Val(strItem(j + 1))
End If
Next j
Next i
For i = 0 To List1.ListCount - 1
Debug.Print List1.List(i), List1.ItemData(i)
Next i
End Sub
自己拽个ListBox控件到Form上 --------------------编程问答-------------------- 不好意思了,我是菜鸟.
我想说明一下我不需要在 List Box里显示,我需要把上面 实现的值 输出在 txt文件里。 --------------------编程问答-------------------- 有没有高手能 通过 dictionary 函数去 实现这个最后结果的? --------------------编程问答--------------------
Dictionary 是“对象”, 不是函数吧。
补充:VB , 网络编程