excel中VBA,导入别的表的数据,下标越界问题

找到一个能从别的表中导入数据的VBA,可是提示下标越界Subtest()DimwkbkAsWorkbook'定义一个工作薄DimmyFileNameAsString'定义... 找到一个能从别的表中导入数据的VBA,可是提示下标越界

Sub test()
Dim wkbk As Workbook '定义一个工作薄
Dim myFileName As String '定义要读取的文件路径
Dim rgA1 As String'定义要读取的单元格A1
Dim rgB10 As String'定义要读取的单元格B10
myFileName = Application.GetOpenFilename("EXCEL文件(*.xls), *.xls") '浏览文件,如XX公司08年XX表.xls
If myFileName = "False" Then '如果按取消那么弹出对话框
MsgBox "请选择文件!", vbInformation, "取消"
Else
Set wkbk = Workbooks.Open(myFileName) '先打开要复制的文件

'这里要复制打开的XX公司08年XX表.xls表1中的A1、表2的B10,到本表A2、A3如何写?
wkbk.Activate‘激活打开工作簿
Sheets("Sheet1").Activate ‘这里提示下标越界
rgA1 = Cells(1, 1) '取得A1
Sheets("Sheet2").Activate ‘这里提示下标越界
rgB10 = Cells(10, 2)'取得B10

wkbk.Close False '关闭工作薄

Cells(2, 1) = rgA1’给目标格赋值A2
Cells(3, 1) = rgB10’给目标格赋值A3

MsgBox "文件导入成功,请保存该文件!"
' End If
End If
End Sub

我不是很懂VBA,出现这个不知道要怎么才能用
Sheets("Sheet1").Activate Sheets("Sheet2").Activate ‘这里提示下标越界

另外就是在文件名不固定的情况下,有没有别的方法来导入别的表的数据
展开
 我来答
wkl1237
2009-10-27 · TA获得超过671个赞
知道小有建树答主
回答量:469
采纳率:0%
帮助的人:293万
展开全部
那个不是下标越界,是没有找到实际的sheet改成:
Sheets(1).Activate
Sheets(2).Activate

也可以把“sheet1”“sheet2”换成你实际的sheet名
方括号
2009-10-27 · TA获得超过3.8万个赞
知道大有可为答主
回答量:1.7万
采纳率:55%
帮助的人:1.8亿
展开全部
XX公司08年XX表.xls的各工作表的名称是什么?
Sheets("Sheet1").Activate中的Sheet1是工作表名称,改成实际使用的名称。
Sheets("Sheet2").Activate的也同样。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式