Excel精英培训网

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

[已解决]用VBA导入外部数据

[复制链接]
发表于 2012-3-11 18:25 | 显示全部楼层 |阅读模式
外部数据导入.rar (6.67 KB, 下载次数: 144)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2012-3-11 18:45 | 显示全部楼层    本楼为最佳答案   
本帖最后由 hrpotter 于 2012-3-11 22:20 编辑
  1. Sub 导入a()
  2.     Dim wb As Workbook
  3.     Dim arra
  4.     On Error Resume Next
  5.     Application.ScreenUpdating = False
  6.     Set wb = Workbooks.Open(ThisWorkbook.Path & "\A.xls")
  7.     With wb.Sheets(1)
  8.         arra = .Range("a3:h" & .Range("a65536").End(xlUp).Row)
  9.     End With
  10.     wb.Close False
  11.     Set wb = Nothing
  12.     With Sheets("2")
  13.         .Range("a3:h65536").Clear
  14.         .Range("a3").Resize(UBound(arra), 8) = arra
  15.     End With
  16.     Application.ScreenUpdating = True
  17. End Sub
  18. Sub 导入b()
  19.     Dim wb As Workbook
  20.     Dim arrb
  21.     On Error Resume Next
  22.     Application.ScreenUpdating = False
  23.     Set wb = Workbooks.Open(ThisWorkbook.Path & "\B.xls")
  24.     With wb.Sheets(1)
  25.         arrb = .Range("a3:h" & .Range("a65536").End(xlUp).Row)
  26.     End With
  27.     wb.Close False
  28.     Set wb = Nothing
  29.     With Sheets("2")
  30.         .Range("j3:q65536").Clear
  31.         .Range("j3").Resize(UBound(arrb), 8) = arrb
  32.     End With
  33.     Application.ScreenUpdating = True
  34. End Sub
复制代码

外部数据导入.rar (12.84 KB, 下载次数: 469)
回复

使用道具 举报

发表于 2012-3-11 20:24 | 显示全部楼层
2l楼正解。。。。。。。。。。。。。
回复

使用道具 举报

发表于 2012-3-12 08:47 | 显示全部楼层
  1. Sub 导入a()
  2.     Dim wb As Workbook
  3.     Dim arra
  4.     Application.ScreenUpdating = False
  5.     If Len(Dir(ThisWorkbook.Path & "\A.xls")) = 0 Then
  6.         MsgBox "文件不存在!"
  7.         Exit Sub
  8.     End If
  9.     Set wb = Workbooks.Open(ThisWorkbook.Path & "\A.xls")
  10.     With wb.Sheets(1)
  11.         arra = .Range("a3:h" & .Range("a65536").End(xlUp).Row)
  12.     End With
  13.     wb.Close False
  14.     Set wb = Nothing
  15.     With Sheets("2")
  16.         .Range("a3:h65536").Clear
  17.         .Range("a3").Resize(UBound(arra), 8) = arra
  18.     End With
  19.     Application.ScreenUpdating = True
  20. End Sub
  21. Sub 导入b()
  22.     Dim wb As Workbook
  23.     Dim arrb
  24.     Application.ScreenUpdating = False
  25.     If Len(Dir(ThisWorkbook.Path & "\B.xls")) = 0 Then
  26.         MsgBox "文件不存在!"
  27.         Exit Sub
  28.     End If
  29.     Set wb = Workbooks.Open(ThisWorkbook.Path & "\B.xls")
  30.     With wb.Sheets(1)
  31.         arrb = .Range("a3:h" & .Range("a65536").End(xlUp).Row)
  32.     End With
  33.     wb.Close False
  34.     Set wb = Nothing
  35.     With Sheets("2")
  36.         .Range("j3:q65536").Clear
  37.         .Range("j3").Resize(UBound(arrb), 8) = arrb
  38.     End With
  39.     Application.ScreenUpdating = True
  40. End Sub
复制代码
再给个要是文件不存在,不处理的代码给你!
回复

使用道具 举报

发表于 2012-6-9 10:36 | 显示全部楼层
能加上解释就好了、、、
回复

使用道具 举报

发表于 2012-6-13 13:28 | 显示全部楼层
是的啊,方便我们这些不懂代码的理解。
回复

使用道具 举报

发表于 2013-3-25 23:11 | 显示全部楼层
如果A文件里面的数据是1-22-41导入后会变成14998,不信你试试,这是为什么?

回复

使用道具 举报

发表于 2013-3-26 12:38 | 显示全部楼层
nicety9 发表于 2013-3-25 23:11
如果A文件里面的数据是1-22-41导入后会变成14998,不信你试试,这是为什么?

1-22-41是指1941年1月22日,用常规数值表示就是14998,应该是这样的!
回复

使用道具 举报

发表于 2013-3-28 08:30 | 显示全部楼层
学习了!好好学习,天天向上!
回复

使用道具 举报

发表于 2013-6-19 10:58 | 显示全部楼层
hrpotter 发表于 2012-3-11 18:45

可以帮解决我的需求吗?谢!

外部数据导入.rar

23.42 KB, 下载次数: 14

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-12 12:54 , Processed in 0.362166 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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