Excel精英培训网

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

[已解决]vba程序急!!!!!!!!!!!!!!

[复制链接]
发表于 2012-9-23 15:59 | 显示全部楼层 |阅读模式
vba程序急!!!!!!!!!!!!!!
最佳答案
2012-9-23 16:57
表1表2数据引用.rar (22.84 KB, 下载次数: 15)

新建 Microsoft Office Excel 工作表.rar

8.96 KB, 下载次数: 8

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-9-23 16:51 | 显示全部楼层
本帖最后由 hwc2ycy 于 2012-9-23 16:59 编辑
  1. Sub s1()
  2.     Dim arr1, arr2
  3.     Dim dicJHY As Object, dicBJ As Object
  4.     Application.ScreenUpdating = False
  5.     Set dicJHY = CreateObject("scripting.dictionary")
  6.     Set dicBJ = CreateObject("scripting.dictionary")
  7.     Worksheets("2").Select
  8.     arr2 = Range("a2:c" & [a2].End(xlDown).Row).Value
  9.     Set dic = CreateObject("scripting.dictionary")
  10.     Worksheets("1").Activate
  11.     arr1 = Range("A2:E" & [a2].End(xlDown).Row).Value

  12.     For i = 1 To UBound(arr2)
  13.         dicJHY.Add arr2(i, 1), arr2(i, 2)
  14.         dicBJ.Add arr2(i, 1), arr2(i, 3)
  15.     Next
  16.    
  17.     For i = 1 To UBound(arr1)
  18.         arr1(i, 5) = dicBJ(arr1(i, 1))
  19.         If arr1(i, 5) <> "" Then
  20.             arr1(i, 4) = arr1(i, 5)
  21.         End If
  22.     Next
  23.     Range("a2").Resize(UBound(arr1), UBound(arr1, 2)).Value = arr1
  24. End Sub
复制代码
你的E列数据是不是自己算得有误啊。结果不一样嘛。
回复

使用道具 举报

发表于 2012-9-23 16:57 | 显示全部楼层    本楼为最佳答案   
表1表2数据引用.rar (22.84 KB, 下载次数: 15)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-27 11:56 , Processed in 0.311160 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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