html相同值合并显示出来,合并相同数据单元格并显示出汇总数据

Sub Adele()

Dim d As Object, brr(), crr(), drr(), frr()

Set d = CreateObject("scripting.dictionary")

Dim x&, y&, z&, k&, n&

n = 1

With Sheets("数据")

arr = .Range("a1").CurrentRegion

ReDim brr(1 To UBound(arr), 1 To UBound(arr, 2))

ReDim frr(1 To UBound(arr), 1 To UBound(arr, 2))

For x = 2 To UBound(arr)

s = arr(x, 1) & "," & arr(x, 2) & "," & arr(x, 3)

If Not d.exists(s) Then

d(s) = arr(x, 4)

Else

d(s) = d(s) & "," & arr(x, 4)

End If

Next

End With

a = d.keys: b = d.items

For i = 0 To UBound(a)

bb = Split(b(i), ",")

ReDim crr(1 To UBound(bb) + 1)

ReDim drr(1 To UBound(bb) + 1)

For j = 0 To UBound(bb)

k = k + 1

crr(k) = bb(j) * 1

Next j

ma = Application.Max(crr)

mi = Application.Min(crr)

su = ma + mi

For y = 1 To UBound(crr)

If crr(y) <> ma And crr(y) <> mi Then

n = n + 1

drr(1) = su

drr(n) = crr(y)

End If

Next y

k = 0

For z = 1 To UBound(drr)

If drr(z) <> "" Then

kk = kk + 1

aa = Split(a(i), ",")

frr(kk, 1) = aa(0)

frr(kk, 2) = aa(1)

frr(kk, 3) = aa(2)

frr(kk, 4) = drr(z)

End If

Next

Next i

With Sheets("结果")

.Range("f2").Resize(UBound(frr), UBound(frr, 2)) = frr

End With

End Sub

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值