VB.NET之旅-机房收费系统个人重构DatagridView导出数据到Excel

VB.NET之旅-机房收费系统个人重构DatagridView导出数据到Excel,第1张

概述    记得vb版的机房收费系统的导出Excel是从网上直接搬的代码,这次又遇到了从dataGridView导出Excel的问题,我在心里暗暗想,这次的代码一定要自己写,这一写可就出问题了,请见下文 第一步,添加引用在U层 第二步,引入命名空间 第三步,书写代码 遇到问题一. 答案:从网上找了很多资料,原来答案在这里,excel的表格索引值行和列都是从1开始的,而我这里却是从0开始的 遇到问题二,

记得vb版的机房收费系统的导出Excel是从网上直接搬的代码,这次又遇到了从dataGrIDVIEw导出Excel的问题,我在心里暗暗想,这次的代码一定要自己写,这一写可就出问题了,请见下文

第一步,添加引用在U

第二步,引入命名空间

第三步,书写代码

遇到问题一.

答案:从网上找了很多资料,原来答案在这里,excel的表格索引值行和列都是从1开始的,而我这里却是从0开始的

遇到问题二,


没有表头,而且我在DataGrIDVIEw中的卡号明明是00001到了excel中怎么变成了1,我想大家都知道这是Excel中的单元格格式的问题,只要把单元格的格式改成文本类型,然后在进行输入就可以了。

代码:

再解决一下表头问题:

再看一下具体的代码:

<strong> Public Sub ExportExcel(ByRef frmname As Form,ByRef flexgrID As DataGrIDVIEw)        Dim xlApp As New Excel.Application        Dim xlBook As Excel.Workbook        Dim xlSheet As Excel.Worksheet        Dim answer As Int16        xlBook = xlApp.Workbooks.Add(True)        xlSheet = xlBook.Worksheets.Add()        If flexgrID.Rows.Count = 0 Then            answer = MessageBox.Show("当前记录为空,仍需导出吗?",frmname.Text,MessageBoxbuttons.YesNo,MessageBoxIcon.Question)            If answer = DialogResult.No Then                Exit Sub            End If        End If        With flexgrID            Dim drow As Int16            Dim dcol As Int16            drow = flexgrID.Rows.Count '行            dcol = flexgrID.Columns.Count '列            xlSheet.Range(xlSheet.Cells(1,1),xlSheet.Cells(drow + 1,dcol)).Select() '选中所需单元格            xlApp.Selection.NumberFormatLocal = "@" '将单元格的格式定义为文本            'excel.cell(行的索引,列的索引)两个索引都是从1开始的            'DataGrIDVIEw(列的索引,行的索引)两个索引都是从0开始的            For i = 0 To dcol - 1                xlSheet.Cells(1,i + 1) = flexgrID.Columns(i).headerText            Next            For i = 0 To drow - 1 'i为0到总行数-1的循环                For j = 0 To dcol - 1 'j为0到总列数-1的循环                    xlSheet.Cells(i + 2,j + 1) = flexgrID.Item(j,i).Value.ToString                Next            Next        End With        xlApp.Visible = True    End Sub</strong>
希望同样遇到这些问题的同学,能从这里找到些答案,能给大家一点帮助! 总结

以上是内存溢出为你收集整理的VB.NET之旅-机房收费系统个人重构DatagridView导出数据到Excel全部内容,希望文章能够帮你解决VB.NET之旅-机房收费系统个人重构DatagridView导出数据到Excel所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1272815.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存