导航

« wifi有链条,手机连接上wifi后却不能上网的可能原因win7开机后卡死的解决方法  »

VB.NET DataGridView 导出到excel csv xls

虚位以待 VB.NET

网上找了很久一般都是C#版本的DataGridView 导出到excel,vb.net版本的非常 少,这次我整理了一下,可实现不需要excel控件就能导出到excel csv或xls,以下是具体代码

ASP/Visual Basic Code复制内容到剪贴板
  1. Public Sub DataToExcel(m_DataView As DataGridView)  
  2.     Dim kk As New SaveFileDialog()  
  3.     kk.Title = "保存EXECL文件"  
  4.     kk.Filter = "EXECL文件(*.csv) |*.csv |EXECL文件(*.xls) |*.xls |所有文件(*.*) |*.*"  
  5.     kk.FilterIndex = 1  
  6.     kk.FileName = "name_" & TextBox1.Text  
  7.     If kk.ShowDialog() = DialogResult.OK Then  
  8.         Dim FileName As String = kk.FileName '+ ".csv"  
  9.         If File.Exists(FileName) Then  
  10.             File.Delete(FileName)  
  11.         End If  
  12.         Dim objFileStream As FileStream  
  13.         Dim objStreamWriter As StreamWriter  
  14.         Dim strLine As String = ""  
  15.         objFileStream = New FileStream(FileName, FileMode.OpenOrCreate, FileAccess.Write)  
  16.         objStreamWriter = New StreamWriter(objFileStream, System.Text.Encoding.Unicode)  
  17.         For i As Integer = 0 To m_DataView.Columns.Count - 1  
  18.             If m_DataView.Columns(i).Visible = True Then  
  19.                 strLine = (strLine & m_DataView.Columns(i).HeaderText.ToString()) + Convert.ToChar(9)  
  20.             End If  
  21.         Next  
  22.         objStreamWriter.WriteLine(strLine)  
  23.         strLine = ""  
  24.   
  25.         For i As Integer = 0 To m_DataView.Rows.Count - 1  
  26.             If m_DataView.Columns(0).Visible = True Then  
  27.                 If m_DataView.Rows(i).Cells(0).Value Is Nothing Then  
  28.                     strLine = (strLine & Convert.ToString(" ")) + Convert.ToChar(9)  
  29.                 Else  
  30.                     strLine = (strLine & m_DataView.Rows(i).Cells(0).Value.ToString()) + Convert.ToChar(9)  
  31.                 End If  
  32.             End If  
  33.             For j As Integer = 1 To m_DataView.Columns.Count - 1  
  34.                 If m_DataView.Columns(j).Visible = True Then  
  35.                     If m_DataView.Rows(i).Cells(j).Value Is Nothing Then  
  36.                         strLine = (strLine & Convert.ToString(" ")) + Convert.ToChar(9)  
  37.                     Else  
  38.                         Dim rowstr As String = ""  
  39.                         rowstr = m_DataView.Rows(i).Cells(j).Value.ToString()  
  40.                         If rowstr.IndexOf(vbCr & vbLf) > 0 Then  
  41.                             rowstr = rowstr.Replace(vbCr & vbLf, " ")  
  42.                         End If  
  43.                         If rowstr.IndexOf(vbTab) > 0 Then  
  44.                             rowstr = rowstr.Replace(vbTab, " ")  
  45.                         End If  
  46.                         strLine = (strLine & rowstr) + Convert.ToChar(9)  
  47.                     End If  
  48.                 End If  
  49.             Next  
  50.             objStreamWriter.WriteLine(strLine)  
  51.             strLine = ""  
  52.         Next  
  53.         objStreamWriter.Close()  
  54.         objFileStream.Close()  
  55.         MessageBox.Show(Me"保存EXCEL成功""提示", MessageBoxButtons.OK, MessageBoxIcon.Information)  
  56.     End If  
  57. End Sub  

 最后去调用即可:        DataToExcel(DataGridView1) '导出到excel
需要引用的是:Imports System.IO
 

  • 顶一下
虚位以待




原创文章如转载,请注明:转载自落日故乡

本文链接地址:http://www.spersky.com/post/483.html

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

内容搜索


虚位以待

常用链接

最新评论及回复

Powered By Z-Blog

Copyright spersky All Rights Reserved.Theme Moonlight,Calf modified.n 浙ICP备16017820号-1