vb.netexecl的简单介绍

怎么用vb.net直接修改excel文件内容

这个简单,看下面代码(适应各版本Excel,但前提是完整安装的excel )

创新互联是一家集网站建设,西宁企业网站建设,西宁品牌网站建设,网站定制,西宁网站建设报价,网络营销,网络优化,西宁网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

Try

Dim excelObj As Object = GetObject(, "Excel.Application")

If excelObj.Workbooks.Count = 0 Then '注意,如果是新建未保存的工作簿不算打开

MsgBox("没有工作簿打开")

excelObj = Nothing

Exit Sub

End If

excelObj.Workbooks(1).Worksheets(1).Range("A1").Value = "123" '表示把已经打开的第一个工作簿的第一个工作表的A1单元格赋值为“123”

excelObj = Nothing

Catch ex As Exception

MsgBox(ex.Message)

End Try

vb.net 输出 excel

这里有段VB6.0的,你可以参考。

注意添加引用。

Private Sub Command6_Click()

Dim i, j As Integer

Dim xlApplication As Excel.Application, xlWorkbook As Excel.Workbook, xlSheet

Dim xlApp As Excel.Application

On Error Resume Next

Set xlApplication = GetObject(, "Excel.Application")

Set xlApp = CreateObject("Excel.Application")

If MsgBox("确认将文件信息导出到EXCEL中?�", vbExclamation + vbYesNo, "警告") = vbYes Then

If Err.Number 0 Then Set xlApplication = CreateObject("Excel.Application")

Set xlWorkbook = xlApplication.Workbooks.Add

Set xlSheet = xlWorkbook.ActiveSheet

xlSheet.Cells(1, 2) = lblcl.Caption

xlSheet.Range("A1:E1").MergeCells = True

xlSheet.Range("A1:E1").HorizontalAlignment = xlCenter

xlSheet.Cells(2, 2).ColumnWidth = 18

For i = 1 To DataGrid1.Columns.Count

xlSheet.Cells(2, 1) = "编号"

xlSheet.Cells(2, i + 1) = DataGrid1.Columns(i).Caption

For j = 0 To DataGrid1.VisibleRows - 1

xlSheet.Cells(j + 3, 1) = j + 1

xlSheet.Cells(j + 3, i + 1) = DataGrid1.Columns(i).CellText(DataGrid1.RowBookmark(j))

Next j

Next i

xlApplication.Visible = True

Set xlSheet = Nothing

Set xlWorkbook = Nothing

Set xlApplication = Nothing

'xlApp.Range("A2:L2").Columns.Interior.ColorIndex = 40

'xlApp.Range("A2:L2").Borders.LineStyle = xlContinuous

'xlApp.Visible = True

'xlApp.Range(xlSheet.Cells(2 + PartsRs.RecordCount + 1, 1), xlSheet.Cells(2 + PartsRs.RecordCount + 1, 8)).Columns.Interior.ColorIndex = 40

'xlApp.Range(xlSheet.Cells(2 + PartsRs.RecordCount + 1, 1), xlSheet.Cells(2 + PartsRs.RecordCount + 1, 8)).Borders.LineStyle = xlContinuous

Else

MsgBox "无信息可供您导出,请确认!", vbExclamation + vbOKOnly, "警告"

End If

End Sub

VB.net如何打开添加在现有项里面的EXCEL文件

现在工程里添加引用Microsoft.Office.Interop.Excel,然后可以使用如下代码输出。

Dim oXl As Excel.Application = New Excel.Application()

Dim oWb As Excel.Workbook

Dim oWs As Excel.Worksheet

On Error GoTo Morn

oWb = oXl.Workbooks.Add()

oWs = oWb.Worksheets(1)

With oWs

.Cells._Default(1, 1).Value ="a"

.Cells._Default(1, 2).Value ="b"

.Cells._Default(1, 3).Value ="c"

.Cells._Default(1, 4).Value ="d"

.Cells._Default(2, 1).Value ="32"

.Cells._Default(2, 2).Value ="1"

.Cells._Default(2, 3).Value ="90"

.Cells._Default(2, 4).Value ="合格"             

End With

oWs.Parent.Names.Add("CostRange", "="  "A1:B39")

oWs.SaveAs(sFileName)

System.Windows.Forms.Cursor.Current = System.Windows.Forms.Cursors.Default

If MsgBox("已将数据输出到Excel文件中! 现在打开该文件?", MsgBoxStyle.Question + MsgBoxStyle.YesNo, "已完成") = MsgBoxResult.No Then

oXl.Quit()

Else

oXl.Visible = True

End If

oXl = Nothing

oWs = Nothing

oWb = Nothing

vb.net2010关闭excel问题

使用 ADO 连接到 Excel

ADO 使用 MDAC 中以下两个 OLE DB 提供程序中的任何一个都可以连接到 Excel 数据文件。

Microsoft Jet OLE DB Provider — 或 —Microsoft OLE DB Provider for ODBC Drivers

使用 Microsoft Jet OLE DB Provider

Jet 提供程序只需要两条信息就可以连接到 Excel 数据源:路径(包括文件名),和 Excel 文件版本。

Jet 提供程序使用连接字符串

Dim cn as ADODB.Connection

Set cn = New ADODB.Connection

With cn

.Provider = "Microsoft.Jet.OLEDB.4.0"

.ConnectionString = "Data Source=C:\MyFolder\MyWorkbook.xls;" _

"Extended Properties=Excel 8.0;"

.Open

End With

提供程序版本:必须使用 Jet 4.0 提供程序;Jet 3.51 提供程序不支持 Jet ISAM 驱动程序。如果指定了 Jet 3.51 提供程序,在运行时会出现以下错误信息:

Couldn't find installable ISAM.

Excel 版本:对于 Excel 95 工作簿(Excel 版本 7.0),应指定 Excel 5.0;对于 Excel 97、Excel 2000 或 Excel 2002 (XP) 工作簿(Excel 版本 8.0、9.0 和 10.0),应指定 Excel 8.0 版本。

使用“数据链接属性”对话框的 Jet 提供程序

如果在应用程序中使用“ADO 数据控件”或“数据环境”,就会出现数据链接属性对话框来收集必要的连接设置。

在提供程序选项卡上,选择 Jet 4.0 提供程序;Jet 3.51 提供程序不支持 Jet ISAM 驱动程序。如果指定了 Jet 3.51 提供程序,在运行时会出现以下错误信息:

Couldn't find installable ISAM.

在连接选项卡上,浏览到工作簿文件。忽略“用户 ID”和“密码”项,因为这些不适用于 Excel 连接。(无法打开受密码保护的 Excel 文件作为数据源。)

在所有选项卡上,从列表中选择扩展属性,然后单击编辑值。输入 Excel 8.0;,用分号 (;) 将其与任何其他已有的项分隔。如果忽略此步骤,测试连接时将出现一条错误信息。这是因为如果不另行指定,Jet 提供程序期望 Microsoft Access 数据库。返回到连接选项卡,并单击测试连接。将出现一个消息框,通知测试已成功完成即可。

vb.net .Excel 追加保存

Sub Excel()

Const FilePath As String = "C:\1.xls"   '文件名

Dim ExApp As Object = CreateObject("Excel.Application")

ExApp.Visible = True

If Not IO.File.Exists(FilePath) Then

ExApp.Workbooks.Add()

ExApp.ActiveWorkbook.SaveAs(FilePath)

Else

ExApp.Workbooks.Open(FilePath)

End If

Dim Wk As Object = ExApp.ActiveWorkbook

Dim iRow As Integer = Wk.ActiveSheet.Range("A65535").End(3).Row + 1

'添加需要的代码

Wk.ActiveSheet.Cells(iRow, 1).Value = "xxxxx"

ExApp = Nothing

Wk = Nothing

End Sub

关于VB.net中读取Excel数据存入数组后的再读取问题

因为Excel表的左上角的单元格都是以第一行第一列

MsgBox(LBound(arr, 1)) '一维最小下标

MsgBox(LBound(arr, 2)) '二维最小下标

测试:用上面函数(LBound)得到的结果都是1


分享名称:vb.netexecl的简单介绍
网站网址:http://scyanting.com/article/docoied.html