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

ASP.NET
Script:WINDOWS Script 枚举运行中进程
使用Flex结合Webservice完成域名查询
VSTS Team System 总算装好了。
用于部署数据库的 数据库初始化工具 xzSQLDeploy Tools V1.0 (for SQLServer) f...
一个将阿拉伯数字转换成中文大写的最简单算法
SCRIPT:使用Windows Script 关闭和打开指定程序
Script:使用WINDOWS脚本访问WEB SERVICES
asp.net连接Access数据库
VB中IIS Application发布可能出现的问题
VB打包后的安装问题
Nhibernate的数据分页技术(续)
使用API函数复制文件,可显示进度。
VB打包技巧
VB.NET实现DirectSound9 (9) 实现示波器
VB.NET 实现DirectSound9 (10) 均衡器
[水晶报表部署系列之一]轻松搞定水晶报表9.2打包
DataGrid 中双向排序的一种办法
利用System.EventHandler来实现两个窗体间的事件调用
多线程应用程序中调用窗体的一点心得
Smart Client之旅一:用B/S方式运行Exe应用程序

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 47 ::
收藏到网摘: 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