VB中如何定义excel变量
我总的目标是,在VB里写好程序代码,再封装到dll文件,然后在excel里面引用dll,实现程序在excel中的运行。现在的情况是,我已经实现直接在excel的宏里面写程...
我总的目标是,在VB里写好程序代码,再封装到dll文件,然后在excel里面引用dll,实现程序在excel中的运行。现在的情况是,我已经实现直接在excel的宏里面写程序代码,并成功运行程序了。但是把程序封装dll里面,再到excel里面运行,就出现些问题。
excel中的VBA程序代码是这样的:
Selection.AutoFilter Field:=6, Criteria1:="=*B*" ‘筛选第六列含B的
Columns("G:N").Select ‘选择G到N列
Selection.Copy ’复制选中的列
Workbooks.Add ‘新建excel文件
Selection.PasteSpecial Paste:=xlPasteValues '复制数据
放到VB里面我做了些修改:
Selection.AutoFilter Field:=6, Criteria1:="=*B*"
XLAPP.Columns("G:N")).Select
Selection.Copy
Dim excelWorkBook As Excel.Workbook
Set excelWorkBook = excelApp.Workbooks.Add '创建新工作簿
Selection.PasteSpecial Paste:=xlPasteValues '完成新建文件并复制数据
运行后提示错误'91',未设置对象变量或with block变量
请问怎么修改呢? 展开
excel中的VBA程序代码是这样的:
Selection.AutoFilter Field:=6, Criteria1:="=*B*" ‘筛选第六列含B的
Columns("G:N").Select ‘选择G到N列
Selection.Copy ’复制选中的列
Workbooks.Add ‘新建excel文件
Selection.PasteSpecial Paste:=xlPasteValues '复制数据
放到VB里面我做了些修改:
Selection.AutoFilter Field:=6, Criteria1:="=*B*"
XLAPP.Columns("G:N")).Select
Selection.Copy
Dim excelWorkBook As Excel.Workbook
Set excelWorkBook = excelApp.Workbooks.Add '创建新工作簿
Selection.PasteSpecial Paste:=xlPasteValues '完成新建文件并复制数据
运行后提示错误'91',未设置对象变量或with block变量
请问怎么修改呢? 展开
1个回答
展开全部
对于 XLAPP.Columns("G:N")).Select 一句
我猜xlapp应该是被定义为了excel.application对象
其应该是没有columns属性的
columns有对应的工作表,如sheets(3).columns
我猜xlapp应该是被定义为了excel.application对象
其应该是没有columns属性的
columns有对应的工作表,如sheets(3).columns
追问
之前没加xlapp,在生成dll文件的时候就会提示错误,我就在所有columns、Cells这些语句前面都加了xlapp,然后就能成功生成dll文件了。
我在想第一句 Selection.AutoFilter Field:=6, Criteria1:="=*B*" 这句前面就应该加xlapp之类的东西,但我不知道怎么加。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询