Excel精英培训网

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

[已解决]修改vba

[复制链接]
发表于 2015-3-9 15:21 | 显示全部楼层 |阅读模式
本帖最后由 xhuang 于 2015-3-9 15:29 编辑

HI,各位,以下vba只能汇总在当前excel里面,我现在想将sheet1 a列数据,汇总到sheet2 b列出来,
如何修改,vba语言如下,先谢了!


Sub test()
    Dim d As Object
    Dim i As Long
    Dim ar
    On Error Resume Next
    Set d = CreateObject("scripting.dictionary")
    ar = Range("a1:a" & Range("a65536").End(xlUp).Row)
    For i = 1 To UBound(ar)
        d(ar(i, 1)) = ""
    Next i
    Range("b:b").Clear
    Range("b1").Resize(d.Count, 1) = Application.Transpose(d.keys)
End Sub
最佳答案
2015-3-9 15:25
Sub test()
    Dim d As Object
    Dim i As Long
    Dim ar
    On Error Resume Next
    Set d = CreateObject("scripting.dictionary")
    ar = Range("a1:a" & Range("a65536").End(xlUp).Row)
    For i = 1 To UBound(ar)
        d(ar(i, 1)) = ""
    Next i
    Sheet2.Range("b:b").Clear
    Sheet2.Range("b1").Resize(d.Count, 1) = Application.Transpose(d.keys)
End Sub
发表于 2015-3-9 15:25 | 显示全部楼层    本楼为最佳答案   
Sub test()
    Dim d As Object
    Dim i As Long
    Dim ar
    On Error Resume Next
    Set d = CreateObject("scripting.dictionary")
    ar = Range("a1:a" & Range("a65536").End(xlUp).Row)
    For i = 1 To UBound(ar)
        d(ar(i, 1)) = ""
    Next i
    Sheet2.Range("b:b").Clear
    Sheet2.Range("b1").Resize(d.Count, 1) = Application.Transpose(d.keys)
End Sub

评分

参与人数 1 +3 收起 理由
xhuang + 3 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2015-3-9 15:28 | 显示全部楼层
grf1973 发表于 2015-3-9 15:25
Sub test()
    Dim d As Object
    Dim i As Long

看来得学习学习,这么简单都不会,谢谢您!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-24 21:40 , Processed in 0.393392 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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