首页 > 编程知识 正文

字符串中数字求和,vba多个字典

时间:2023-05-06 14:41:07 阅读:15977 作者:1013

今天同事发现a列和b列需要同样的数量,所以把c列加了起来。 这是用词典操作最快的方法:

源工作区:

这里可以无视D E F G列。 那些只是公式

上升到代码:

Sub Combine2()

Dim r As Integer

Dim sht_s As Worksheet ' source sht

Dim sht_r As Worksheet ' result sht

set sht _ s=this workbook.worksheets (source ) )。

set sht _ r=this workbook.worksheets (result ) )。

ARR=sht_s.range(a1 ) ).CurrentRegion

setd=createobject (scripting.dictionary ) )。

forI=2toubound(arr ) ) ) ) ) )。

ifd.exists(arr(I,1 ) arr (I,2 ) ) Then

d(arr(I,1 ) arr (I,2 ) )=array ) arr (I,1 ),arr (I,2 ),arr (I,3 ) d(arr(I,1 ) ) ) () ) )

Else

d(arr(I,1 ) arr ) I,2 )=array ) arr ) I,1 ),arr ) I,2 ),arr ) I,3 ),I,4 ),arr ),I,5 ),arrr )

End If

下一步

With sht_r

. Cells.Clear

. range(a1 )=)='item )。

. range(B1 )=)='Amount ) )。

. range(H1 )='Plus or not '。

r=2

For Each dk In d.keys

. range(a ) r ).Resize ),8 )=d ) dk ) ) ) ) )。

r=r 1

下一步

结束宽度

最终辅

数据只有7列,但增加1列。 到时候加入标题. range(h1 )=)='Plus or not '作为Title Filter,就知道哪个可以一起了。

结果工作表:

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。