资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

vb.net表格存,vbnet表格控件

vb.netgrid自动生成excel不保存

软件bug,软件缓存过多。

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的垣曲网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

1、vb.netgrid软件运行服务器出现bug导致自动生成excel不保存,退出重新进入,等待官方修复。

2、vb.netgrid软件缓存过多导致自动生成excel不保存,清理软件空间,重启软件。

vb.net 中怎么用SaveFileDialog将TXT文件保存为能分隔的表格数据

Public Sub abc() Dim filename, inputstring As String Dim i As Integer Dim data i = 1 filename = "d:\WYKS.txt" '本列TXT文件放在D盘中 Open filename For Input Access Read As #1 Do While Not EOF(1) Line Input #1, inputstring '读TXT文件一行 data = inputstring If i 1 Then Cells(i - 1, 1) = Mid(data, 11, 6) '截取从第11个字符后6个字符 Cells(i - 1, 2) = Mid(data, 19, 8) '截取从第19个字符后8个字符 Cells(i - 1, 3) = Mid(data, 29, 6) '截取从第29个字符后6个字符 Cells(i - 1, 4) = Mid(data, 37, 8) '截取从第37个字符后8个字符 End If i = i + 1 Loop Close #1 End Sub

vb.net EXCEL 问题

使用了VB.NET开发一个访问excel读取数据并修改的小程序,有一些经验性的东西和大家共享,如果有误还请大家指正。

大致分为这样几个部分来说明:

1、 准备部分:

准备部分我们需要添加excel library的引用到工程中:我使用office2003,它的库文件为 Microsoft excel 11.0 object library。如果使用excel2000,那么它使用的是Microsoft excel 9.0 object library。

有需要时,我们添加Imports 命名空间。

我在这个程序中只是访问了excel的数据,不需要命名空间了哈。

2、 声明一些对象:

这些对象并不是都需要,前面三个应该有,后面的,你需要什么对象就声明:

Dim excelapp As Excel.Application ‘声明一个application对象

Dim excelworkbook As Excel.Workbook ‘声明一个工作簿对象

Dim excelsheet As Excel.Worksheet ‘声明一个工作表对象

等等…如:

Dim excelrange As Excel.Range ‘声明一个范围对象

3、 访问一个excel文件:

excelapp = New Excel.Application

excelworkbook = excelapp.Workbooks.Open(strfile) ‘访问到工作簿:这个strfile 是文件的路径,我从打开文件对话框中得到的。

excelsheet = excelworkbook.Sheets.Item(1) ‘访问到工作表:item使用索引值来得到sheet对象的引用

excelsheet.activate

我们可以得到此文件中的值:

定义一个string变量:

Dim strcellvalue as string

Strcellvalue=excelsheet.cells(1,1).value ‘得到A1单元格的内容。

修改的时候反过来就可以了:

excelsheet.cells(1,1).value= Strcellvalue

4、 善后:

在程序的每一个退出口操作excel对象,保存或者不保存:

Excelworkbook.save

Excelworkbook.close

Excelapp=nothing

5其它:

需要注意~上面的代码需要一些容错机制,比如:

If Not excelworkbook Is Nothing Then 这样的话来达到程序的正确运行

需要判断现在excel又没有打开。如果有excel进程正在运行。你的代码很可能会影响到打开的excel,像Excelworkbook.close这样的语句虽然前面已经很好的唯一指定了工作簿,但不能很武断的进行鲁莽的操作,我们需要判断现在excel的运行情况。

另外,VB.NET 读取Excel 2007的xlsx文件和读取老的.xls文件是一样的,都是用Oledb读取,仅仅连接字符串不同而已。读取xlsx 用的是Microsoft.Ace.OleDb.12.0;具体操作方法如下:

Public Shared Function GetExcelToDataTableBySheet(ByVal FileFullPath As String, ByVal SheetName As String) As DataTable

'string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + FileFullPath + ";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此连接只能操作Excel2007之前(.xls)文件

Dim strConn As String = ("Provider=Microsoft.Ace.OleDb.12.0;" "data source=") + FileFullPath ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"

'此连接可以操作.xls与.xlsx文件

Dim conn As New OleDbConnection(strConn)

conn.Open()

Dim ds As New DataSet()

Dim odda As New OleDbDataAdapter(String.Format("SELECT * FROM [{0}]", SheetName), conn)

'("select * from [Sheet1$]", conn);

odda.Fill(ds, SheetName)

conn.Close()

Return ds.Tables(0)

End Function

读取Excel文件时,可能一个文件中会有多个Sheet,因此获取Sheet的名称是非常有用的。根据Excel物理路径获取Excel文件中所有表名的具体操作方法如下:

Public Shared Function GetExcelSheetNames(ByVal excelFile As String) As [String]()

Dim objConn As OleDbConnection = Nothing

Dim dt As System.Data.DataTable = Nothing

Try

'string strConn = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + excelFile + ";Extended Properties='Excel 8.0; HDR=NO; IMEX=1'"; //此连接只能操作Excel2007之前(.xls)文件

Dim strConn As String = ("Provider=Microsoft.Ace.OleDb.12.0;" "data source=") + excelFile ";Extended Properties='Excel 12.0; HDR=NO; IMEX=1'"

'此连接可以操作.xls与.xlsx文件

objConn = New OleDbConnection(strConn)

objConn.Open()

dt = objConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, Nothing)

If dt Is Nothing Then

Return Nothing

End If

Dim excelSheets As [String]() = New [String](dt.Rows.Count - 1) {}

Dim i As Integer = 0

For Each row As DataRow In dt.Rows

excelSheets(i) = row("TABLE_NAME").ToString()

i += 1

Next

Return excelSheets

Catch

Return Nothing

Finally

If objConn IsNot Nothing Then

objConn.Close()

objConn.Dispose()

End If

If dt IsNot Nothing Then

dt.Dispose()

End If

End Try

End Function


网站栏目:vb.net表格存,vbnet表格控件
当前路径:http://cdkjz.cn/article/dscecis.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

大客户专线   成都:13518219792   座机:028-86922220