vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
TXT/CSV - Datei mit Hilfe von VB.net in Exel 2010 importieren 
Autor: Sepp-86
Datum: 29.11.11 13:29

Hallo!

Ich bin schon am verzweifeln, probier jetzt schon 2 Tage alles mögliche aus aber anscheinend bin ich einfach zu blöd.


Ich möchte ein TXT- bzw CSV- File in Exel 2010 importieren. Per VBA funktioniert es 1A, aber per VB.net das Exel fernzusteuern funktioniert nicht richtig.

Mit TextFileColumnDataTypes = Array ... kann vb.net anscheinend nichts anfangen, bei Microsoft.Office.Interop.Excel.XlColumnDataType.xlTextFormat bringt er mir ebenfalls eine Fehlermeldung, dass ArgumentException nicht behandelt wurde (Falscher Parameter).

Das einlesen der Datei funktioniert, aber die Spalten sollen als Textformat importiert werden weil sonst Mist rauskommt.

Mittlerweile weiß ich als blutiger Anfänger nicht mehr weiter . . . hoffentlich könnt ihr mir helfen.


Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As _
  System.EventArgs) Handles Button5.Click
 
        Dim oXl As Microsoft.Office.Interop.Excel.Application
        Dim osheet As Microsoft.Office.Interop.Excel.Worksheet
 
 
        oXl = CreateObject("Excel.Application")
 
        oXl.DisplayAlerts = False
 
        oXl.Workbooks.Add()
        oSheet = oXl.Worksheets(1)
 
        'TXT Datei öffnen
 
 
        Dim file As String
        Dim ofd As New OpenFileDialog
        ofd.InitialDirectory = "C:\"
        ofd.Filter = "Texte (*.txt)|*.txt| " _
           & "Alle Dateien (*.*)|*.*"
        ofd.Title = "Wählen Sie eine Datei zum Öffnen aus"
        If ofd.ShowDialog() = _
              Windows.Forms.DialogResult.OK Then
            file = ofd.FileName
        Else
            MsgBox("Vorgang wurde abgebrochen!")
            Exit Sub
        End If
 
        osheet.Cells.Select()
        osheet.Cells.NumberFormat = "@"
        osheet.Range("A1").Select()
 
        file = "TEXT;" + file
 
        With osheet.QueryTables.Add(Connection:= _
        file _
        , Destination:=osheet.Range("$A$1"))
            .Name = "Positionen"
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .RefreshStyle = 1
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .TextFilePromptOnRefresh = False
            .TextFilePlatform = 1252
            .TextFileStartRow = 1
            .TextFileParseType = _
              Microsoft.Office.Interop.Excel.XlTextParsingType.xlDelimited
            .TextFileTextQualifier = _
            Microsoft.Office.Interop.Excel.XlTextQualifier.xlTextQualifierDoubl_
            eQuote
            .TextFileConsecutiveDelimiter = False
            .TextFileTabDelimiter = True
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
            .TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2)
            .TextFileTrailingMinusNumbers = True
            .Refresh(BackgroundQuery:=False)
        End With
 
        oXl.Sheets(1).Select()
 
 
        Dim sfd As New SaveFileDialog
        Dim dateiname As String
 
 
        sfd.InitialDirectory = "C:\"
        sfd.Filter = "Tabellen (*.xlsx)|*.xls| " _
           & "Texte (*.txt)|*.txt| " _
           & "Alle Dateien (*.*)|*.*"
        sfd.Title = "Wählen Sie eine Datei zum Speichern aus"
        If sfd.ShowDialog() = DialogResult.OK Then
 
            dateiname = sfd.FileName
            oXl.Application.ActiveWorkbook.SaveAs(dateiname)
        Else
            MsgBox("Der Vorgang wurde abgebrochen!")
        End If
 
 
 
        ' Mappe schließen 
        oXl.Application.Workbooks.Close()
        'Fehlermeldungen wieder aktivieren 
        oXl.Application.DisplayAlerts = True
 
    End Sub
Danke!!!!

Viele Gr??e aus Bayern!

Euer Sepp

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
TXT/CSV - Datei mit Hilfe von VB.net in Exel 2010 importiere...1.869Sepp-8629.11.11 13:29
Re: TXT/CSV - Datei mit Hilfe von VB.net in Exel 2010 import...1.049CLL05.12.11 08:11

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel