Ich habe eine Form mit 3 Buttons, eines zum auswählen der .xlsx Datei, einen Button zum auswählen wo ich die Textdatei abspeichern will und einen Verarbeiten Button.
Wenn ich den Verarbeiten Button betätige, nimmt er sich den Pfad für die Excel Datei und die der zu erzeugenden Text Datei aus einem FileOpenDialog und dem FileSaveDialog und baut sie in den ConnectionString und in den FileWriterStream ein
Die Excel Datei öffne ich mit
Aber wenn ich das ausführe, dann bleibt er mir immer bei
Wenn ich den Verarbeiten Button betätige, nimmt er sich den Pfad für die Excel Datei und die der zu erzeugenden Text Datei aus einem FileOpenDialog und dem FileSaveDialog und baut sie in den ConnectionString und in den FileWriterStream ein
Die Excel Datei öffne ich mit
Visual Basic-Quellcode
- Dim pfad As String = tbSource.Text 'Speicherort der Excel Datei
- Dim listEntries As List(Of String)
- Using xlsconn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & pfad & ";Extended Properties=""Excel 12.0 Xml""")
- xlsconmn.Open()
- Dim cmd As OleDbCommand = xlsconn.CreateCommand()
- cmd.CommandText = "SELECT * FROM [Tabelle1$]"
- Dim dr As OleDbDataReader = cmd.ExecuteReader
- 'Aus Datei lesen, ein vbCrLf anhängen, in einer Array List abspeichern und an eine Sub übergeben, die das ganze in eine Datei mittles StreamWriter wegschreibt.
- Do While dr.Read()
- listEntries.Add(dr(0) & dr(1) & dr(2) & vbCrLf)
- Loop
- ausgabe(listEntries)
- End Using
Aber wenn ich das ausführe, dann bleibt er mir immer bei
xlsconn.Open()
stehen, weil eine Exception ausgelöst wird. Die VB Fehler MsgBox sagt, dass "Die Daten nicht aktualisiert werden können, da das Objekt oder die Datenbank schreibgschützt ist". Aber ich hab weder die Datei offen, noch irgendwie schreibgeschützt irgendwo liegen ( bei mir auf C:\excelfile.xlsx)In general (across programming languages), a pointer is a number that represents a physical location in memory. A nullpointer is (almost always) one that points to 0, and is widely recognized as "not pointing to anything". Since systems have different amounts of supported memory, it doesn't always take the same number of bytes to hold that number, so we call a "native size integer" one that can hold a pointer on any particular system. - Sam Harwell
Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Radinator“ ()