excel vba代码要怎么写

2022-08-15 教育 75阅读

用如何代码可实现,假设原数据在A、B列

Sub main()

Set dic = CreateObject("scripting.dictionary")

arr = Range("A1").CurrentRegion

For i = 1 To UBound(arr)

If dic.exists(arr(i, 2)) = False Then

dic(arr(i, 2)) = arr(i, 1)

Else

If dic(arr(i, 2)) < arr(i, 1) Then

dic.Remove arr(i, 2)

dic(arr(i, 2)) = arr(i, 1)

End If

End If

Next i

[E1].Resize(dic.Count, 1) = Application.Transpose(dic.keys)

[D1].Resize(dic.Count, 1) = Application.Transpose(dic.items)

End Sub


详细步骤如下:

  1. 原数据

  2. Alt+F11,选择sheet1,复制上述代码

  3. 关闭返回工作表,alt+F8,掉出宏界面

  4. 点击执行,即得到想要的结果:

声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com