Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1520to1524
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Import Text file

Import Text file
09.11.2016 15:37:48
Tobias
Hallo zusammen,
Ich habe ein Makro geschrieben, welches die Daten aus einer ausgewählten Textdatei importieren soll.
Das Ganze funktioniert auch wie gewollt, allerdings soll die Exceltabelle im Normalfall versteckt sein. Wenn das der Fall ist bekomme ich beim Klicken auf den Import Button folgende Fehlermeldung:
Run-time error '-2147417848 (80010108)'
Automation error
The object invoked has disconnected from its clients

Wie kann ich die Zuweisung auf das versteckte Tabellenblatt korrekt durchführen?
Grüße
Hier der Code:
  • 
    Private Sub Import_Button_Click()
    Dim length As Double
    Dim x As Double
    Workbooks("SDC_0.31.xlsm").Sheets("INPUT").Columns("A:L").Delete Shift:=xlToLeft
    filename = Application.GetOpenFilename(fileFilter:="Text Files (*.txt), *.txt")
    With Workbooks("SDC_0.31.xlsm").Sheets("INPUT").QueryTables.Add(Connection:="TEXT;" &  _
    filename, Destination:=Workbooks("SDC_0.31.xlsm").Sheets("INPUT").Range("$A$1"))
    .Name = "Import"
    .FieldNames = True
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .TextFilePromptOnRefresh = False
    .TextFilePlatform = 850
    .TextFileStartRow = 1
    .TextFileParseType = xlDelimited
    .TextFileTextQualifier = xlTextQualifierDoubleQuote
    .TextFileConsecutiveDelimiter = False
    .TextFileTabDelimiter = True
    .TextFileSemicolonDelimiter = False
    .TextFileCommaDelimiter = False
    .TextFileSpaceDelimiter = False
    .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1)
    .TextFileTrailingMinusNumbers = True
    .Refresh BackgroundQuery:=False
    End With
    End Sub
    

  • 4
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Datum
    Anwender
    Anzeige
    AW: Import Text file
    09.11.2016 18:30:35
    Oberschlumpf
    Hi Tobias
    Ich würde...
    ...Tabelle.Visible = True setzen
    ...jetzt dein Code
    ...am Schluss wieder Tabelle.Visible = False
    Ciao
    Thorsten
    AW: Import Text file
    10.11.2016 07:48:57
    Tobias
    Hallo Thorsten,
    das sichtbar machen würde ich gerne vermeiden, da dann jedes mal die Tabelle aufpoppt und das ganze auch etwas Zeit frisst.
    Gibt es keine Möglichkeit Daten in ein versteckes Excel File zu exportieren?
    Daten mittels VBA in versteckte Tabellenblätter zu schreiben funktioniert ohne Probleme..
    AW: Import Text file
    10.11.2016 18:15:32
    Oberschlumpf
    Hi Tobias
    mit Bsp-Dateien, die Excel-Datei mit Code + eine Bsp-Txt-Datei inkl. Bsp-Daten, per Upload von dir zur Verfügung gestellt, könnte man dir vielleicht helfen.
    Ciao
    Thorsten
    Anzeige
    AW: Import Text file
    11.11.2016 01:00:26
    Jürgen
    Hallo Tobias,
    Du machst Dir zu viel Mühe: hast Du einmal den Datenimport, also eine Abfrage, angelegt, musst Du diese nur noch aktualisieren. Die Abfrage der neuen Quelldatei kann die Abfrage auch schon von Haus aus (wenn Du das nicht manuell deaktiviert hast). Der Code für den Import-Button könnte also einfach ein Einzeiler sein:
    Workbooks("SDC_0.31.xlsm").Sheets("INPUT").QueryTables(1).refresh
    
    Wenn es ein wenig allgemeiner sein darf (also z. B. die Datei problemlos einen neuen Namen erhalten kann), sollte der Code lauten:
    ThisWorkbook.Sheets("INPUT").QueryTables(1).refresh
    

    Ob das das Problem mit der versteckten Tabelle löst konnte ich jetzt nicht testen.
    Gruß, Jürgen
    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige