VB 查阅 Excel 文件

来源:百度知道 编辑:UC知道 时间:2024/06/17 03:29:32
本人有 N 个Excel表格(已经在当前目录),姑且叫 N1.xls 、N2.xls.....。
每个表格固定4个工作表:Sheet1-4。
我想用一个 ADO 控件、一个DataGrid控件,来显示 Excel 文件。用FileListBox 控件选择文件,用两个按钮控件来选择工作表。
折腾了老半天,没成功。
就是要利用 ADO 控件和 DataGrid控件 查看 现有的 Excel 文件(不是新建立 Excel 文件)。
因为有多个 Excel 文件 所以想用FileListBox 控件选择要查阅的文件。
因为每个 Excel 文件中有4个工作表,想用 按钮控件来选择工作表来选择工作表。
如果我的算法不可行,请高手为我想个更好的办法,总之能方便查阅 Excel文件就可以。
请那位高手帮个忙,为我写个程序,上机一通过一定追加分。
先谢了。
可能我的设想不对,只要能方便地利用类是DataGrid控件等表格控件查阅,Excel文件的内容就可以。(不要进入Excel界面,没有Spreadsheet控件)

思路:
1.取得excel对象,然后控制该对象,读取该对象的所有工作表,并写入listbox,
2.当在用户listbox选取某一工作表时,用ADODC控件连接excel,再把DataGrid绑定ADODC控件,通过DataGrid显示表内的数据

*详细方法如下*
建一个窗体:
增加listbox,dataGrid,adodc 控件各1个

窗体内代码如下

Option Explicit

Public path As String 'excel文件路径

Private Sub Form_Load()

Dim myexcel As New Excel.Application
Dim mybook As Workbook
Dim mysheet As Worksheet

Dim su, j As Long

'excel表路径
path = "D:\我的文档\3000条新书无资料11_3.xls"

Set mybook = myexcel.Workbooks.Open(path)

'遍历每个工作表,取出所有表名
Dim a As Worksheet
For Each a In mybook.Sheets '在此循环里,你可以添加到listbox控件
List1.AddItem a.Name
' MsgBox a.Name '显示工作表的名称
' MsgBox a.Range("a1") '显示A1单元格
Next
mybook.Close
Set mysheet = Nothing
Set mybook = Nothing
Set myexcel = Nothing
End Sub

Su