vb读取excel文件的问题 后续问题

来源:百度知道 编辑:UC知道 时间:2024/06/18 12:18:39
延续之前的问题~
小弟初学VB,很多地方不懂,请高手指教
问题一:
在窗体中再添加一个名字为"添加"的command按纽,唤出个msgbox之类的小窗体(包含两个text文本框),目的是想将两text文本框的填写的数据分别写入A列和B列,不是覆盖添加,打个比方,从A列和B列的第三行开始往下顺序添加~
问题2:
如果excel的A列和B列各有一排数据,A列1行至A列6行为中文"一"至"六",B列1行至B列6行为数据"1"至"6"。
假设vb程序运行时先读取A1B1的数据,窗体中添加一个command控件,caption值为"下一个",当点击这个按纽时,显示A列B列下一行的数据,循环到最后无数据时,command控件为不可用~

你要求的代码出来了~测试通过!!!
效率不是很高,但是从vb操作Excel的理念出发,也完全符合你的要求,根据需要可以再改进~~
提示:用vb操作excel把数据先读入数组再操作要快很多~~
或者下面的方法:strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & path & ";Extended Properties='Excel 8.0;HDR=no;IMEX=1'"
'打开Excel连接
xlConn.Open strConn
'像打开数据库一样,使用SQL语言,打开名称为“sheet1”的工作表
xlRs.Open "select * from [sheet1$]", xlConn, adOpenStatic, adLockReadOnly
'获得表中数据的记录数
xlCnt = xlRs.RecordCount

1.Private Sub Command1_Click()
'先引用microsoft Excel
Dim Rows As Long
Dim NewApp As New Excel.Application
Dim NewSheet As New Excel.Worksheet
Dim NewBook As New Excel.Workbook
Set NewApp = New Excel.Application
Set NewBook = NewApp.Workbooks.Open("d:\1.xls")
Set NewSheet = NewBook.Worksheets(1)
Rows = NewSheet.UsedRange.Rows.Count 'Excel总行数
NewSheet.Cells(Rows + 1, 1) = Text1.Text