VB.NET版机房收费系统---导出Excel表格
2015-03-22 13:51
267 查看
datagridview,翻译成中文的意思是数据表格显示,使用DataGridView控件,能够显示和编辑来自不同类型的数据源的表格,将数据绑定到DataGridView控件很easy和直观,大多数情况下,仅仅须要设置DataSource属性就可以,在绑定到包括多个列表或表的数据库源时,仅仅需将DataMember属性设置为绑定的列表或表的字符串就可以。机房收费系统多次用到数据表格的显示,而且导出为Excel表格,第一次机房收费系统是用VB版本号的,她导出Excel的方法例如以下:
打开VB-project-应用-勾选Microsoft Excel 14.0 Objexts 2.6 Library
![](http://img.blog.csdn.net/20140625092135109?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDg1MDAyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
代码例如以下:
首先,我们须要引用
![](http://img.blog.csdn.net/20140625092831203?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDg1MDAyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
另一个细节问题,我们须要把AllowUserToAddRow这个属性改为False,后面具体解释True和False的差别:
![](http://img.blog.csdn.net/20140625093345875?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDg1MDAyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
编程代码例如以下:
![](http://img.blog.csdn.net/20140625095221156?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDg1MDAyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
AllowUserToAddRow这个属性改为True的时候出现例如以下错误:
![](http://img.blog.csdn.net/20140625100027234?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMDg1MDAyNw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
由于单元格的value是空的,对一个控制进行.ToString()操作时,就会出现System.NullReferenceException异常。对此我将toString去掉,就不报错了,另外你能够对value先进行是否为空进行推断假设不为空,在进行Tostring()操作,上述是在改动代码的基础上来攻克了这个问题,另外对于控件本身也有一个属性控制,是否自己主动加入空白行。VB.NET版机房收费系统,未完,待续......
打开VB-project-应用-勾选Microsoft Excel 14.0 Objexts 2.6 Library
代码例如以下:
<span style="font-size:18px;">Private Sub CmdExport_Click() Dim j As Integer Dim xlApp As Excel.Application Dim xlBook As Excel.Workbook Dim xlSheet As Excel.Worksheet Set xlApp = CreateObject("Excel.Application") '实例化对象xlApp xlApp.Visible = True Set xlBook = xlApp.Workbooks.Add Set xlSheet = xlBook.Worksheets(1) For i = 0 To myflexgrid.Rows - 1 For j = 0 To myflexgrid.Cols - 1 myflexgrid.Row = i myflexgrid.Col = j xlSheet.Cells(i + 1, j + 1) = Trim(myflexgrid.Text) Next Next End Sub </span>第二版机房收费系统VB.NET版本号,她又怎么样导出Exce表格nie,跟VB版的导出Excel表格的方法有哪些异曲同工之妙,又有着VB不具备的妙处呢?以下一一介绍:
首先,我们须要引用
另一个细节问题,我们须要把AllowUserToAddRow这个属性改为False,后面具体解释True和False的差别:
编程代码例如以下:
<span style="font-size:18px;">Public Function dirivExcel(ByVal dgv As DataGridView) As Boolean Dim myExcel As New Microsoft.Office.Interop.Excel.Application '建立Excel连接 myExcel.Application.Workbooks.Add(True) myExcel.Visible = True Dim i, j, k As Integer '定义变量 For k = 0 To dgv.ColumnCount - 1 '加入表头 myExcel.Cells(1, k + 1) = dgv.Columns(k).HeaderText Next k For i = 0 To dgv.RowCount - 1 '通过循环来加入控件中的数据到表格中 For j = 0 To dgv.ColumnCount - 1 '因为第一行是表头,所以加入数据时就从第二行開始加入 myExcel.Cells(i + 2, j + 1) = dgv(j, i).Value Next Next Return True '加入完成,返回true End Function</span>如今我们来看一下执行结果:
AllowUserToAddRow这个属性改为True的时候出现例如以下错误:
由于单元格的value是空的,对一个控制进行.ToString()操作时,就会出现System.NullReferenceException异常。对此我将toString去掉,就不报错了,另外你能够对value先进行是否为空进行推断假设不为空,在进行Tostring()操作,上述是在改动代码的基础上来攻克了这个问题,另外对于控件本身也有一个属性控制,是否自己主动加入空白行。VB.NET版机房收费系统,未完,待续......
相关文章推荐
- 机房收费系统-导出Excel表格
- 机房收费系统之导出Excel表格
- VB.NET版机房收费系统---导出Excel表格
- VB.NET版机房收费系统---导出Excel表格
- 机房收费系统之导出Excel函数
- 机房收费总结之——Excel表格的导出
- VB.NET版机房收费系统---组合查询
- VB.NET版机房收费系统---外观层如何写
- VB.NET版机房收费系统---SqlHelper
- 机房收费系统总结之6——DataGridView导出为Excel
- VB.NET版机房收费系统—DataGridView应用
- VB.NET版机房收费系统---外观层如何写
- 机房收费系统——在VB中将MSHFlexGrid控件中的数据导出到Excel
- 机房收费系统之导出Excel
- VB.NET版机房收费系统---SqlHelper
- 机房收费系统个人VB.NET版总结
- 机房收费系统(1)——导出为Excel文本
- 机房收费系统之 导出excel
- 机房收费系统——VB将MSHflexgrid控件中的数据导出为Excel
- VB.NET版机房收费系统---七仙女之系统登录