Microsoft Excel ist Tabellenkalkulations-Software , die Ihnen ermöglicht die Eingabe und Verwaltung von großen Datenmengen in Arbeitsblättern . Wenn Sie Daten in Excel übertragen aus einer Datenbank wollen, ist ein Microsoft Visual Basic -Programmiersprache, die Sie den Inhalt eines Datensatzes in eine Excel- Datei kopieren. Visual Basic wurde für Anfänger Programmierer entwickelt und wird in erster Linie verwendet, um zu entwickeln und fertigen Windows-Anwendungen wie Word, PowerPoint und Excel. Anleitung
1
Erstellen Sie eine neue Klasse -Datei in Ihrem Projekt " DataTableHelper.vb "
2
Kopieren Sie die folgende Kopie in die neue Datei : . Importe SystemImports System.DataImports System.IO
Public Class DataTableHelper
'' Kann DataTable Browser streamen , direkt , müssen Sie '' Response.Clear () gesetzt ; ' Response.Buffer = true; "Antwort . ContentType = "application /vnd.ms -excel "; " Response.AddHeader ( " Content -Disposition "," inline; filename = Clientes.xls "); ' Response.Charset =" "; " this.EnableViewState = false ' AKTUELL CODE ' ProduceCSV ( dt , Response.Output , true); '
Public Shared Sub ProduceCSV (ByVal dt Wie DataTable , _ByVal httpStream Wie System.IO.TextWriter , ByVal WriteHeader As Boolean ) Dim i As Int32Dim j Wie Int32If WriteHeader Dann
Dim arr ( dt.Columns.Count ) As String
For i = 0 To dt.Columns.Count - . 1arr (i) = dt.Columns ( i) ColumnNamearr (i) = GetWriteableValue (arr (i)) NexthttpStream.WriteLine ( String.Join ( "," , arr) ) End If
Für j = 0 To dt.Rows.Count - 1dim dataArr (dt. Columns.Count ) Wie StringFor i = 0 To dt.Columns.Count - 1dim o As Object = dt.Rows (j) ( i) dataArr (i) = GetWriteableValue (o) NexthttpStream.WriteLine ( String.Join ( "," , dataArr )) Next End Sub
# Region " CSVProducer " Public Shared Sub ProduceCSV (ByVal dt Wie DataTable , _ByVal Datei Wie System.IO.StreamWriter , ByVal WriteHeader As Boolean )
Dim i As Int32Dim j Wie Int32If ( WriteHeader ) ThenDim arr ( dt.Columns.Count ) Wie StringFor i = 0 To dt.Columns.Count - . 1arr (i) = dt.Columns ( i) ColumnNamearr (i ) = GetWriteableValue (arr (i)) Nextfile.WriteLine ( String.Join ( "," , arr) ) End If
Für j = 0 To dt.Rows.Count - 1dim dataArr ( dt.Columns . Count ) Wie StringFor i = 0 To dt.Columns.CountDim o As Object = dt.Rows (j) ( i) dataArr (i) = GetWriteableValue (o) Nextfile.WriteLine ( String.Join ( "," , dataArr ) ) WeiterEnde Sub