求教一个excel 的 worksheet 传参的问题
我的界面中 有3个输入框,都是textbox ,分别输入 sheet的编号(sheet_num),行的编号(row_num),和 列的编号(col_num)
在程序中,我先定义了3个变量都是数字型
dim sheet_n ,row_num ,col_num as Integer
sheet_n = sheet_num.Value
row_n = row_num.Value
col_n = col_num.Value
然后读取了一个excel ,
Dim xlbook As Excel.Workbook
Dim xlsheet As Excel.Worksheet
Set xlbook = xlApp.Workbooks.Open("d:\text.xls")
Set xlsheet = xlbook.Worksheets(sheet_n)
xlsheet.Cells(row_n , col_n)
.....
执行到 Set xlsheet = xlbook.Worksheets(sheet_n) 时报下标越界
我设的sheet的编号是3,那个text.xls有10个sheet,照道理不会越界的,
而 我将 Set xlsheet = xlbook.Worksheets(sheet_n) 改成 Set xlsheet = xlbook.Worksheets(3)时
运行正常的
各位大师能否分析一下原因,谢谢!
[解决办法]
Set xlsheet = xlbook.Worksheets(CInt(sheet_n))