Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2044|回复: 3

[已解决]因我不会写个VBA代码,恳请老师帮忙写个VBA代码,谢谢

[复制链接]
发表于 2011-12-8 20:22 | 显示全部楼层 |阅读模式
如何用字典将SHEET1和SHEET2表中A-D列的物料代码去重后在SHEET3表中A-D列中列出来.rar (8.19 KB, 下载次数: 15)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2011-12-8 21:04 | 显示全部楼层
回复

使用道具 举报

发表于 2011-12-8 21:10 | 显示全部楼层    本楼为最佳答案   
本帖最后由 zjdh 于 2011-12-8 21:16 编辑

以你的宏为基础修改如下:
  1. Sub 字典去重复()
  2.     Set D = CreateObject("Scripting.Dictionary")
  3.     For H = 1 To 2
  4.         工作表 = "Sheet" & H
  5.         Myr = Sheets(工作表).[A65536].End(xlUp).Row
  6.         ARR = Sheets(工作表).Range("A1:D" & Myr)
  7.         For I = LBound(ARR) To UBound(ARR)
  8.             D(ARR(I, 1)) = ARR(I, 1) & "|" & ARR(I, 2) & "|" & ARR(I, 3) & "|" & ARR(I, 4)
  9.         Next
  10.     Next H
  11.     K = D.keys
  12.     ReDim BRR(0 To UBound(K), 1 To 4)
  13.     For I = 0 To UBound(K)
  14.         F = Split(D(K(I)), "|")
  15.         For J = 0 To 3
  16.             BRR(I, J + 1) = F(J)
  17.         Next
  18.     Next
  19.     Sheets("Sheet3").Activate
  20.     Sheets("Sheet3").Range("A:D").ClearContents
  21.     Sheets("Sheet3").Cells(1, 1).Resize(D.Count, 4) = BRR
  22.     Set D = Nothing
  23. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2012-6-26 09:25 | 显示全部楼层
等待高手来解决!!!!!!!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-3-29 13:04 , Processed in 0.403219 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表