首页 >>  正文

vs.net 2003 下 vb.net 读取 excel 表最后一行数据 求助

来源:www.zuowenzhai.com    作者:编辑   日期:2024-06-15
使用VS 2015软件利用VB.NET编程操作excel 怎么样像Excel VBA那样将区域单元格直接读入数组?

'首先通过菜单[项目] -- [添加引用],选择[COM]选项卡,选择“Microsoft Excel XX.0 Object Library”,[确定]。

添加一个按钮:
试试下面的代码:注意版本;先建立以个EXCEL文件保存到c:\下面,我的计算机是安装OFFICE 2010。
Public Class Form1

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim AppXls As Microsoft.Office.Interop.Excel.Application '声明Excel对象
Dim AppWokBook As Microsoft.Office.Interop.Excel.Workbook '声明工作簿对象
Dim AppSheet As New Microsoft.Office.Interop.Excel.Worksheet '声明工作表对象

AppXls = New Microsoft.Office.Interop.Excel.Application '实例化Excel对象
AppXls.Workbooks.Open("C:\工作簿1.xlsx") '打开已经存在的EXCEL文件
AppXls.Visible = False '使Excel不可见

'AppWokBook = New Microsoft.Office.Interop.Excel.Workbook '实例化工作簿对象
'AppSheet = New Microsoft.Office.Interop.Excel.Worksheet '实例化工作表对象

AppWokBook = AppXls.Workbooks(1) 'AppWokBook对象指向工作簿"C:\学生成绩.xls"
AppSheet = AppWokBook.Sheets("Sheet1") 'AppSheet对象指向AppWokBook对象中的表“Sheet1”,即:"C:\学生成绩.xls"中的表“Sheet1”

'下面举一些例子:
'1、如果不声明工作表对象 AppSheet ,那么应用AppWokBook对象中的表“Sheet1”的语句就是:AppWokBook.Sheets("Sheet1")
'2、如果不声明工作簿对象 AppWokBook ,那么应用"C:\学生成绩.xls"中的表“Sheet1”的语句就是:AppXls.Workbooks("C:\学生成绩.xls").Sheets("Sheet1")

'要读取数据表"Sheet1"中的单元格“A1”的值,到变量S1里
Dim S1 As String
'方法一
S1 = AppXls.Workbooks(1).Sheets("Sheet1").Range("A1").Value
MsgBox(S1)

'方法二
S1 = AppWokBook.Sheets("Sheet1").Range("A1").Value
MsgBox(S1)

'方法三
S1 = AppSheet.Range("A1").Value
MsgBox(S1)

'把数据写入到单元格“H2”,就是第2行第8个单元格
'方法一
AppXls.Workbooks(1).Sheets("Sheet1").Cells(2, 8).Value = "您好!"
S1 = AppXls.Workbooks(1).Sheets("Sheet1").Cells(2, 8).Value '为了验证,读取并显示它
MsgBox(S1)

'方法二
AppWokBook.Sheets("Sheet1").Cells(2, 8).Value = "你们好!"
S1 = AppWokBook.Sheets("Sheet1").Cells(2, 8).Value '为了验证,读取并显示它
MsgBox(S1)

'方法二
AppSheet.Cells(2, 8).Value = "大家好!"
S1 = AppSheet.Cells(2, 8).Value '为了验证,读取并显示它
MsgBox(S1)

'使用完毕必须关闭EXCEL,并退出
AppXls.ActiveWorkbook.Close(SaveChanges:=True)
AppXls.Quit()


'完成此程序,打开EXCEL检查,可以看到在“Sheet1”表的单元格“H2”里是文本“大家好!”

End Sub
End Class

不知道你是怎么百度的,你的百度关键词应当选择“VB 统计多个excel文件中的数据”。
1、数据透视表是用于在excel中不通过编程就实现汇总数据的目的,既然你都想编程了,数据透视表也就失去意义。

2、ACCESS更是无稽之谈,多此一举。

3、Excel文件不管多少,最重要的是每个文件要有统一的格式,这样就有了编程的前提。
实现方法是:
1、让程序能找到所有excel文件
2、用子过程读取每一个文件,获得所需要的数据,进行汇总
3、所有数据进行汇总,得到结果。

引用excel,然后:
nLR = ActiveSheet.Cells.SpecialCells(xlLastCell).Row '最后一行(与连续与否无关)
Nextcol = Cells(nLR, 1).End(xlToRight).Column '查找最后一行最后一列(与连续与否无关)
然后循环读单元格的值就行了。



(编辑:越纯杭)
联系方式:
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图
@ 作文摘要网