
VB机房收费系统时我们也用到导出Excel,都是从相同的容器中导出,形式和内容上两者大致相同。
一、VB版导出Excel
Dim i As Integer Dim j As Integer Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets(1) For i = 0 To Flex.Rows - 1 For j = 0 To Flex.Cols - 1 Flex.Row = i Flex.col = j xlSheet.Cells(i + 1,j + 1) = Trim(Flex.Text) Next Next xlApp.Visible = True End Sub 二、VB.NET版导出Excel
1、datagrIDvIEw中导出Excel
第一步:添加引用
项目-->添加引用--> .NET-->Microsoft.Office.Interop.Excel
第二步:编写代码
<span > '添加工作簿 Dim MyExcel As New Microsoft.Office.Interop.Excel.Application() '添加表 MyExcel.Application.Workbooks.Add() '打开表 MyExcel.Visible = True '获取datagrIDvIEw的标题行赋给Excel,Excel标题行第一列标识为1,datagrIDvIEw则为0,所以为Cols-1 Dim Cols As Integer For Cols = 1 To dgvlineRecord.Columns.Count MyExcel.Cells(1,Cols) = dgvlineRecord.Columns(Cols - 1).headerText Next '往excel表里添加数据() Dim i As Integer 'datagrIDvIEw的行与列计算时均为0至*.* - 1 For i = 0 To dgvlineRecord.RowCount - 1 Dim j As Integer For j = 0 To dgvlineRecord.ColumnCount - 1 If Me.dgvlineRecord(j,i).Value Is System.dbnull.Value Then 'Excel的第一行是标题,所以应从第二行开始,即:i+2 注意DataGrIDVIEw的坐标是先列后行 MyExcel.Cells(i + 2,j + 1) = "" Else MyExcel.Cells(i + 2,j + 1) = dgvlineRecord(j,i).Value.ToString End If Next j Next i</span>
注:dbnull 类表示一个不存在的值。例如,在数据库的表中,某一行的某列中可能不包含任何数据。即,该列被视为根本不存在,而不只是没有值。一个表示不存在的列的 dbnull 对象。
2、直接从datatable中导出Excel
博客借鉴:
亚红师姐:http://www.jb51.cc/article/p-qkyneoka-xe.html
注:(1)datagrIDvIEw与datatable在形式上较为相近,行与列均是从0开始计算
(2)datagrIDvIEw坐标是先列后行
总结以上是内存溢出为你收集整理的VB.NET机房收费系统导出Excel全部内容,希望文章能够帮你解决VB.NET机房收费系统导出Excel所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)