以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  元素累计相加  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=173405)

--  作者:ganlan
--  发布时间:2021/11/28 18:34:00
--  元素累计相加
比如有档案:A:2.8;B:1.5;C:20;E:55;G:50.....这样,如果填写ACE,就可以自动算出2.5+20+55=77.5,请教一下应该怎么弄好点


--  作者:有点蓝
--  发布时间:2021/11/28 20:40:00
--  
如果规则比较简单,把内容拆分到字典里使用即可

Dim s As String = "A:2.8;B:1.5;C:20;E:55;G:50"
Dim dict As new Dictionary(of String ,Double)
For Each s1 As String In s.split(";")
    Dim d2() As String = s1.split(":")
    dict.add(d2(0),d2(1))
Next

Dim m As String = "ACE"
Dim sum As Double
For Each c As Char In m
    sum = sum + dict(c)
Next
msgbox(sum)

如果规则比较复杂那就要找找有没有规律可循了

--  作者:ganlan
--  发布时间:2021/11/28 21:18:00
--  
好的,谢谢