Excel精英培训网

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

请各位老师升级一下VBA(VBA只能显示部分功能)

[复制链接]
发表于 2019-6-11 14:08 | 显示全部楼层 |阅读模式
1学分
老师:
       想请你升级一下VBA。
       原理如下:
       1.“数据区”内“序号”后有10000列的数据。
       2.实现的效果为:当点击“提取数据”后, 自动在“结果区”内,把和“数据区”相对应“序号”后的数据提取出来。

       目前,此VBA只能提取前20列的数据,多于20列数据时就无能为力了。恳请老师升级VBA。
         提升VBA.rar (463.63 KB, 下载次数: 35)

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
 楼主| 发表于 2019-6-11 14:10 | 显示全部楼层
各位老师:
     表格中包含VBA代码如下:(此VBA只能提取前20列的数据,多于20列数据时就无能为力了。恳请老师升级VBA)
Option Explicit
Sub test()
    Dim ar, br, sh As Worksheet, d As Object, i&, k&, s$
   
    br = Sheets("数据区").Range("U4:Ao" & Cells(Rows.count, "dq").End(3).Row)
    Set d = CreateObject("Scripting.Dictionary")
    For i = 1 To UBound(br)
        s = br(i, 1)
        d(s) = i
    Next
    ar = Sheets("结果区").Range("C4:cy" & Cells(Rows.count, "Cy").End(xlUp).Row)
    For i = 1 To UBound(ar)
        s = ar(i, 1)
        If d.exists(s) Then
            For k = 2 To UBound(br, 2)
                ar(i, k) = br(d(s), k)
            Next
        End If
    Next
    Sheets("结果区").Range("C4:cy" & Cells(Rows.count, "Cy").End(xlUp).Row) = ar
    Set d = Nothing
End Sub
回复

使用道具 举报

发表于 2019-6-11 16:18 | 显示全部楼层
kandhong88 发表于 2019-6-11 14:10
各位老师:
     表格中包含VBA代码如下:(此VBA只能提取前20列的数据,多于20列数据时就无能为力了。恳 ...

下载的附件有病毒,被自动拦截了。
回复

使用道具 举报

发表于 2019-6-11 16:23 | 显示全部楼层
本帖最后由 hfwufanhf2006 于 2019-6-11 16:25 编辑

代码已经把你的数据区锁定了,你自己相应修改下:
    br = Sheets("数据区").Range("U4:Ao" & Cells(Rows.count, "dq").End(3).Row)
U列到Ao列只有20列;

还有,结果区的参数是
ar = Sheets("结果区").Range("C4:cy" & Cells(Rows.count, "Cy").End(xlUp).Row)
c4:cy只有100列左右,远远达不到你说的10000列

老版本的excel最多只有256列,可能作者的excel就是老版本的,没法给你写10000列的区域,是要你自己修改的吧
回复

使用道具 举报

发表于 2019-6-11 16:51 | 显示全部楼层
嗯,就这个建议使用高级筛选或者查找函数,
回复

使用道具 举报

发表于 2019-6-13 08:42 | 显示全部楼层
附件中确实有宏病毒!!
回复

使用道具 举报

发表于 2019-6-13 08:42 | 显示全部楼层
本帖最后由 zjdh 于 2019-6-13 09:54 编辑

已被杀毒软件拦截!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-6 22:20 , Processed in 0.445783 second(s), 10 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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