一、VB怎样实现excel的逐行读取
窗体上添加2个文本框,Text1和Text2,设置它们的MultiLine 属性为True,这样可以显示多行文本。
添加1个按钮Command1.
使用菜单:[工程] -- [引用] -- ,勾选:Microsoft Excel 11.0 Object Library
'其中11.0是不一定的,要看你计算机安装的OFFICE版本而定,11.0对应Office2003
代码如下:
Option Explicit
Private Sub Command1_Click()
Dim xlsApp As Excel.Application '声明对象变量
Dim H As Long
Dim AStr As String
Dim BStr As String
Set xlsApp = Excel.Application '实例化对象
xlsApp.Visible = False '使Excel隐藏不可见
xlsApp.Workbooks.Open ("C:book1.xls") '打开EXCEL文件,假设文件名为book1.xls,存放在C盘根目录
AStr = ""
BStr = ""
H = 1 '假设数据从第一行开始,如果第一行是列名称,就改为从2开始
Do While xlsApp.Application.ActiveWorkbook.Sheets("Sheet1").Range("A" & CStr(H)).Value <> ""
AStr = AStr & xlsApp.Application.ActiveWorkbook.Sheets("Sheet1").Range("A" & CStr(H)).Value & vbCrLf
BStr = BStr & xlsApp.Application.ActiveWorkbook.Sheets("Sheet1").Range("B" & CStr(H)).Value & vbCrLf
H = H + 1
Loop
Text1.Text = AStr
Text2.Text = BStr
xlsApp.ActiveWorkbook.Close savechanges:=True '关闭活动工作簿同时保存对它的更改。
xlsApp.Quit '关闭EXCELL
Set xlsApp = Nothing '释放资源
End Sub
二、如何用VB逐行读取excel
先在VB里面建立一个Excel Object用以访问Excel文件,如果你的Excel是CSV的则不需要,直接按照Txt文本方式打开读取即可.
建立Button事件,将获取的数据传入到TextBox里面即可.
参考如下代码:
条件:我有一个Excel文件D:A.xls里面的Sheet1中A1开始有100个单词;在VB中Form1中有一个TextBox名字为Text1,有一个按钮,名字为Command1则实现代码如下:
Private i As Integer
Private Sub Command1_Click()
Set ExcelApp = CreateObject("Excel.Application")
Set ExcelBook = ExcelApp.Workbooks.Open("D:A.xlsx")
Set ExcelSheet = ExcelBook.Worksheets("Sheet1")
Text1.Text = ExcelSheet.cells(i, 1)
i = i + 1
If i > 100 Then i = 1
End Sub
Private Sub Form_Load()
i = 1
End Sub
希望可以帮助到你!