Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
12
返回列表 发新帖
楼主: kawashaki8899

[已解决]求助!如何追加人员信息

[复制链接]
 楼主| 发表于 2015-12-28 11:45 | 显示全部楼层
dsmch 发表于 2015-12-28 10:44
或这样……

dsmch老师,2种方案都试了,都不行啊!

都是将“追加信息”里有的人的信息,追加对应到了“信息总库”里,但“信息总库”里其他行(其他人)的CA列至CL列里的数据被清空了

我要的是,对上的人员CA列至CL列里的数据被更新为“追加信息”里当前的数值,其他人(即当前“追加信息”里没有的人的员CA列至CL列里的数据维持原状)

请再伸伸援手!

点评

把第四句代码去掉就行了  发表于 2015-12-28 14:09
回复

使用道具 举报

 楼主| 发表于 2015-12-28 13:36 | 显示全部楼层
dsmch老师,还有个事,请将“追加数据按钮”放在“追加数据”表格里,之前我上传的附件把它放在“信息总库”表里了,不好意思!
回复

使用道具 举报

 楼主| 发表于 2015-12-28 14:57 | 显示全部楼层
本帖最后由 kawashaki8899 于 2015-12-28 14:58 编辑
kawashaki8899 发表于 2015-12-28 11:45
dsmch老师,2种方案都试了,都不行啊!

都是将“追加信息”里有的人的信息,追加对应到了“信息总库” ...

dsmch老师,把第四句去掉,果然行了,太感谢了

另外,我尝试将“追加数据按钮”放在“追加数据”表格里(之前我上传的附件把它放在“信息总库”表里了)

改动后代码如下:

Sub Macro1()
Dim arr, brr, d,i&, j%, n&
Set d =CreateObject("scripting.dictionary")
arr =Sheets("信息总库").Range("b5").CurrentRegion
brr =Sheets("追加信息").Range("a13").CurrentRegion
WithWorksheets("信息总库")
For i = 2 ToUBound(brr)
    d(brr(i, 5)) = i
Next
For i = 2 ToUBound(arr)
    If d.exists(arr(i, 3)) Then
        n = d(arr(i, 3))
        For j = 10 To 21
            Cells(i + 4, j + 69) = brr(n, j)
        Next
    End If
Next
End With
End Sub

但我在(2003)VB编辑器界面选择“运行-运行子过程/用户窗体”时,能按要求将"追加信息"中相应信息写入"信息总库"对应行了,但保存关闭VB编辑器后,点“追加数据按钮”还是不起作用

麻烦在帮我看看,我哪里改的不对!
我重新上传个改动后的附件
不好意思!多次麻烦你!

人员信息表qiuzu20151228.rar

136.92 KB, 下载次数: 6

回复

使用道具 举报

发表于 2015-12-28 15:11 | 显示全部楼层    本楼为最佳答案   
  1. Sub Macro1()
  2. Dim arr, brr, d, i&, j%, n&, sht As Worksheet
  3. Set d = CreateObject("scripting.dictionary")
  4. Set sht = Sheets("信息总库")
  5. arr = sht.Range("b5").CurrentRegion
  6. brr = Sheets("追加信息").Range("a13").CurrentRegion
  7. For i = 2 To UBound(brr)
  8.     d(brr(i, 5)) = i
  9. Next
  10. For i = 2 To UBound(arr)
  11.     If d.exists(arr(i, 3)) Then
  12.         n = d(arr(i, 3))
  13.         For j = 10 To 21
  14.             sht.Cells(i + 4, j + 69) = brr(n, j)
  15.         Next
  16.     End If
  17. Next
  18. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2015-12-28 15:21 | 显示全部楼层

谢谢2字无以表达我的感激之心

给您鞠躬  

{:25:}{:25:}{:25:}

解决了困扰了我近3周的难题!再次感谢{:25:}{:25:}{:25:}
回复

使用道具 举报

 楼主| 发表于 2015-12-28 15:28 | 显示全部楼层

dsmch老师,已经测试成功了,再次感谢

为什么我没办法将14楼设为“最佳答案”,说我“已经评价”
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-1 18:26 , Processed in 1.078487 second(s), 15 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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