Mit diesem Beitrag beschreibe ich die Funktion zum Datenexport in eine CSV-Datei.
Diese Funktion kann auch für Excel-Dateien (XLS) genutzt werden. Statt dem „;“ muss dann Chr(9) verwendet werden.
Nachteil der CSV-Datei:
Vor dem Exportieren der Daten muss man darauf achten, dass in Textfeldern kein Semikolon (;) und kein Zeilenumbruch vorliegen. Am besten Ersetzt man im Text diese Zeichen durch ein Leerzeichen und/oder Komma.
– P_Dateipfad = Eigener Dateipfad z.B. F:/Test/
– P_Dateiname = Eigener Dateiname
_______________________________________________________________________________________________________
Public Function ExportDaten(P_Dateipfad As String, P_Dateiname As String) As String
Dim Dateiname As String = P_Dateipfad.ToString & P_Dateiname.ToString & „.csv“
Dim Meldung As String = „“
Dim Zeilenumbruch As String = Chr(13) & Chr(10)
Dim Ausgabezeile As String = „“
Dim A_Nummer As String = „“
Dim A_Kurzbezeichnung As String = „“
Dim A_Menge As String = „“
Dim A_Einheit As String = „“
Dim A_Preis As String = „“
Dim conn As OleDb.OleDbConnection
Dim cmd As New OleDb.OleDbCommand
If My.Computer.FileSystem.DirectoryExists(P_Dateipfad.ToString) Then
If Not My.Computer.FileSystem.FileExists(Dateiname.ToString) Then
My.Computer.FileSystem.WriteAllText(Dateiname.ToString, „Nummer;Kurzbeschreibung;Menge;Einheit;Preis“ & Zeilenumbruch, True)
Else
Meldung = („Fehler beim erstellen der Datei“)
Return (Meldung)
End If
Dim sql = „SELECT Nummer, Kurzbezeichnung, Menge, Einheit, Preis FROM Artikel;“
conn = New OleDb.OleDbConnection(Module1.db_path)
cmd = New OleDb.OleDbCommand(sql, conn)
conn.Open()
Dim reader = cmd.ExecuteReader()
Try
While (reader.Read)
‚****************************************************************************************
‚**** Zum besseren Verständnis habe ich hier die Daten in Variablen abgelegt.
‚**** Optional können die Daten mit Chr(34) versehen werden. Chr(34) = „“
‚**** Wichtig ist am Ende der Zeilenumbruch Chr(13) & Chr(10).
‚**** Die Feldlänge wird hier nicht berücksichtigt.
‚****************************************************************************************
‚ A_Nummer = Chr(34) & reader(„Nummer“).ToString & Chr(34)
‚ A_Kurzbezeichnung = Chr(34) & reader(„Kurzbezeichnung“).ToString & Chr(34)
‚ A_Menge = Chr(34) & reader(„Menge“).ToString & Chr(34)
‚ A_Einheit = Chr(34) & reader(„Einheit“).ToString & Chr(34)
‚ A_Preis = Chr(34) & reader(„Preis“).ToString & Chr(34)
A_Nummer = reader(„Nummer“).ToString
A_Kurzbezeichnung = reader(„Kurzbezeichnung“).ToString
A_Menge = reader(„Menge“).ToString
A_Einheit = reader(„Einheit“).ToString
A_Preis = reader(„Preis“).ToString
Ausgabezeile = A_Nummer.ToString & „;“ & A_Kurzbezeichnung.ToString & „;“ & A_Menge.ToString & „;“ & A_Einheit.ToString & „;“ & A_Preis.ToString & Zeilenumbruch
My.Computer.FileSystem.WriteAllText(Dateiname.ToString, Ausgabezeile.ToString, True)
End While
Meldung = „Die Daten wurden Exportiert“
Catch ex As Exception
Meldung = „Fehler beim Export“
End Try
conn.Close()
End If
Return (Meldung)
End Function
_______________________________________________________________________________________________________