Dim dlg As New OpenFileDialog '定义一个新的OpenFileDialog
dlg.Filter = "Excel文件|*.xls|Word文件|*.doc|Access文件|*.mdb" '设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then '如果用户单击了确定按钮
Vars("Path_in") = dlg.FileName
Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open(dlg.FileName)
Dim filter As String
For Each ws As MSExcel.WorkSheet In Wb.WorkSheets
filter = filter & "|" & ws.Name
Next
filter = filter.TrimStart("|")
e.Form.Controls("ComboBox1").ComboList = filter
End If
我做了一个按钮,按钮的命令如上,当选择表是,下拉框的列表就显示表名,可是非常慢,不如咱们软件的高速合并快,请问什么原因?
vba一向就慢,处理后一定要关闭文档:
……
e.Form.Controls("ComboBox1").ComboList = filter
App.quit
End If
如果需要:我可以向你提供获取excel表名的函数,需要引入NPOI