当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 如何在VB中操作EXCEL(一段代码,两个可以使用的过程)

ASP.NET
用 Asp.Net 建立一个在线 RSS 新闻聚合器的方法
关于前台调用后台事件__doPostBack函数
Bin 和 App_Code 文件夹介绍
.NET 2.0 的压缩功能代码
解决Visual Studio 2005 无法显示设计视图的方法
asp.net(c#)两种随机数的算法,可用抽考题
asp.net下url传递中文的解决方案
XmlReader 读取器读取内存流 MemoryStream 的注意事项
asp.net下创建、查询、修改带名称空间的 XML 文件的例子
使用.NET存储XML数据的方法
XslTransform.Transform将结果输出到字符串里的方法
安装 VS2005 SP1 有关问题的解决办法
asp.net下中文验证码,免费开源代码
自定义应用程序配置文件(app.config)
asp.net下使用DIME协议上传文件
动态改变ASP.net页面标题和动态指定页面样式表的方法
WEB上调用HttpWebRequest奇怪问题的解决方法
HTTP协议下用Web Service上传大文件的解决方案
asp.net下Response.ContentType类型汇总
ASP.NET User Control使用技巧一则

ASP.NET 中的 如何在VB中操作EXCEL(一段代码,两个可以使用的过程)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 173 ::
收藏到网摘: n/a


工程引用说明:本代码的使用是基于Microsoft Excel 2003使用的,未在其它版本的Office上测试过,因此在VB中应当引用Microsoft Excel 11.0
代码其它内容说明:本代码中使用了VsFlexGrid做为源数据;并且可以命名EXCEL 工作单(SHEET)的名称,其中第一段代码是将内容保存到一个新的EXCEL 工作簿中,而第二个则是将内容保存到一个已存在的工作簿中。

为了显示进度,我使用了一个显示进度的窗体,frmPBar,可以去掉相关的该段代码。

Public Sub GridToExcel(srcGrid As VSFlexGrid, shName As String)
'将Grid中的数据导出到Excel表格中
Dim i As Integer
Dim j As Integer

Dim appXL As Variant
Dim wb As Excel.Workbook
Dim sh As Excel.Worksheet
Dim rng, rng1, rng2 As Excel.Range

On Error GoTo errhandler

Set appXL = CreateObject("Excel.Application")
Set wb = appXL.Workbooks.Add()

wb.Activate

Set sh = wb.Worksheets.Add()
sh.Name = shName

frmPBar.Caption = "正在导出数据,请稍候......"
frmPBar.Show

For i = 0 To src/DownloadFiles\a\2005-02-15\/DownloadFiles\a\2005-02-15\Grid.Rows - 1
For j = 1 To src/DownloadFiles\a\2005-02-15\/DownloadFiles\a\2005-02-15\Grid.Cols - 1

sh.Cells(i + 1, j) = src/DownloadFiles\a\2005-02-15\/DownloadFiles\a\2005-02-15\Grid.Cell(flexcpText, i, j)
DoEvents
Next j
Next i

Unload frmPBar

appXL.Visible = True
Exit Sub
errhandler:
MsgBox Err.Description

End Sub

Public Sub GridToExistExcel(srcGrid As VSFlexGrid, fileName As String, shName As String)
'将Grid中的数据导出到一个指定文件的Excel表格中
Dim i As Integer
Dim j As Integer

Dim appXL As Variant
Dim wb As Excel.Workbook
Dim sh As Excel.Worksheet
Dim rng, rng1, rng2 As Excel.Range

On Error GoTo errhandler

Set appXL = CreateObject("Excel.Application")
'Set wb = appXL.Workbooks.Add()
Set wb = appXL.Workbooks.Open(fileName)
wb.Activate

Set sh = wb.Worksheets.Add()
sh.Name = shName

frmPBar.Caption = "正在导出数据,请稍候......"
frmPBar.Show
For i = 0 To src/DownloadFiles\a\2005-02-15\/DownloadFiles\a\2005-02-15\Grid.Rows - 1
For j = 1 To src/DownloadFiles\a\2005-02-15\/DownloadFiles\a\2005-02-15\Grid.Cols - 1
sh.Cells(i + 1, j) = src/DownloadFiles\a\2005-02-15\/DownloadFiles\a\2005-02-15\Grid.Cell(flexcpText, i, j)
DoEvents
Next j
Next i
Unload frmPBar

appXL.Visible = True
Exit Sub
errhandler:
MsgBox Err.Description

End Sub