Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datei öffnen und einlesen mit VBA

Datei öffnen und einlesen mit VBA
25.01.2016 19:03:27
Lukas
Servus! Ich möchte gerne über eine Öffnen-Funktion eine Datei auswählen und in Tabelle1 _
einlesen. Dazu habe ich mir folgendes Makro zusammengeschrieben:

Sub Datenübernahme()
Dim Datei As Variant
Dim ReadFile As String
Datei = Application.GetOpenFilename()
If Datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Else
ReadFile = Right(ReadFile, Len(ReadFile) - InStrRev(ReadFile, "\"))
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" _
& ReadFile & "", Destination:=Range("$A$1"))
.Name = "ReadFile"
.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, 1, 1, 1, 1, 1, 1, 1, 1,  1, 1, 1, 1,  _
_
_
_
1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,   _
_
_
_
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 _
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
_
_
_
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
End With
End If
End Sub

Ich kann wie gewünscht Dateien öffnen, allerdings landet nichts von diesen Dateien in meiner Tabelle. Kann jemand helfen?

Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
das wundert mich nicht
25.01.2016 19:18:17
Michael
Hi Lukas,
schau mal:
Sub Datenübernahme()
Dim Datei As Variant
Dim ReadFile As String
Datei = Application.GetOpenFilename()
If Datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Else
ReadFile = Right(ReadFile, Len(ReadFile) - InStrRev(ReadFile, "\"))
MsgBox ReadFile
ReadFile = Right(Datei, Len(Datei) - InStrRev(Datei, "\"))
MsgBox ReadFile
End If
End Sub
Schöne Grüße,
Michael

Anzeige
AW: das wundert mich nicht
25.01.2016 19:44:23
Luschi
Hallo Lucas,
Michael hat ja schon auf die Ursache hingewiesen, aber trotzdem wird das so nicht klappen.
Auch die Funktion 'QueryTables.Add(...)' muß wissen, wo sich die txt-Datei befindet.
Wieso kneifst Du dann den Pfad von der im Auswahlmenü bestätigten Datei ab.
Setze im Else-Zweig einfach
ReadFile = Datei
und schmeiße diese Vba-Zeile raus:
ReadFile = Right(ReadFile, Len(ReadFile) - InStrRev(ReadFile, "\"))
Gruß von Luschi
aus klein-Paris

Anzeige
stimmt, da war noch was, Gruß @Luschi owT
25.01.2016 20:20:35
Michael

AW: das wundert mich nicht
26.01.2016 00:17:53
Lukas
Schonmal danke für die schnellen Antworten. Das hat mein Verständnis verbessert. Allerdings läuft immer noch irgendetwas schief. Ich habe das Gefühl, dass die .csv, die über "Externe Daten abrufen/Aus Text" in Tabelle1 landen soll dies nicht macht. Mein aktueller Code lautet:
Sub Datenextraktion()
Dim Datei As Variant
Dim ReadFile As String
Datei = Application.GetOpenFilename()
If Datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Else
ReadFile = Datei
With ActiveSheet.QueryTables.Add(Connection:="TEXT;ReadFile", Destination:=Range("$A$1"))
.Name = Right(Datei, Len(Datei) - InStrRev(Datei, "\"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True

Anzeige
AW: das wundert mich nicht
26.01.2016 06:18:35
Luschi
Hallo Lukas,
wenn man in Excel per 'Daten-Externe Daten abrufen' eine txt/csv Datei8 importiert und dabei
'Makro aufzeichnen' mitlaufen läßt, dann sieht der Beginn des Quellcodes so aus:

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;C:\Users\Für_Alle\Documents\test.txt", Destination:=Range("$A1$5"))
Dabei bildet "TEXT;C:\Users\Für_Alle\Documents\test.txt" eine in sich geschlossene Textkette.
ist der Dateiname samt Pfad aber in 1er Variable ausgelagert, dann muß das so aussehen:

ReadFile = "C:\Users\Für_Alle\Documents\test.txt"
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & ReadFile, Destination:=Range("$A$1"))

In Deinem Anfangsthread, stand das ja so schon, nur warum beseitigst Du 1 Fehler um dann ohne Grund einen anderen wieder einzubauen?
fragt sich Luschi
aus klein-Paris

Anzeige
AW: das wundert mich nicht
26.01.2016 10:12:26
Lukas
Das stimmt, da bin ich durcheinander gekommen. Mir fehlt da noch das tiefere Verständnis, da ich erst am Anfang der VBA-Programmierung stehe. Mein Code sieht jetzt so aus:
ReadFile = Datei
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & ReadFile, Destination:=Range("$A$ _
1"))
.Name = Right(Datei, Len(Datei) - InStrRev(Datei, "\"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False

Es wird trotzdem nichts eingelesen. Ich sehe gerade nur Bäume, keinen Wald...

Anzeige
evtl. anderer Ansatz
26.01.2016 17:16:27
Michael
Hi zusammen,
da fällt mir gerade ne Frage ein, die ich eh mal stellen wollte: dieses ganze query-Zeug scheint bei jedem Aufruf eine Instanz anzulegen, die dann unter "vorhandene Verbindungen" zu sehen ist/sind.
Bei den Beispielcodes im Forum habe ich bisher immer nur gesehen, daß ne query gestartet wird, aber nicht, daß die dann wieder gelöscht/deaktiviert (oder wie auch immer) wird.
Im konkreten Fall liest Lukas ja nur Daten ein, die mit "1" wie Standard gespeichert werden.
Hier die Frage an Lukas: was sind das für Daten? Texte? Datümer? Zahlen mit und ohne Nachkommastellen?
Ist die Anzahl der Spalten immer gleich?
Die dreckige Variante geht so:
Option Explicit
'kommt in Modul 1
Sub CSV_Importieren()
Dim pfad As String
Dim datei As Variant
Dim a As Variant, a2 As Variant, az As Variant
Dim s As String
Dim i&, dNr%, z&, sp&, zl&, spZ&, zlZ&
Dim c As Range
datei = Application.GetOpenFilename()
If datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Exit Sub
End If
pfad = datei
' **************** Name der Tabelle1 wurde im
' Eigenschaften-Fenster auf Import geändert
Import.Cells.Clear
dNr = FreeFile
Open pfad For Binary As #dNr
s = Space(LOF(dNr))
Get #dNr, 1, s
Close #dNr
a = Split(s, vbCrLf)
zl = UBound(a)
' ************* hier ";" durch vbtab ersetzen
sp = UBound(Split(a(1), ";"))
a2 = Import.Range("A1", Import.Cells(zl + 1, sp + 1))
For zlZ = 0 To zl
' ************* hier ";" durch vbtab ersetzen
az = Split(a(zlZ), ";")
For spZ = 0 To UBound(az)
a2(zlZ + 1, spZ + 1) = az(spZ)
Next
Next
Import.Range("A1", Import.Cells(zl + 1, sp + 1)) = a2
End Sub
Na, mal sehen...
Schöne Grüße,
Michael
P.S.: falls das nicht hinhaut, wäre es nicht ungeschickt, wenn Lukas mal die komplette Beispieldatei, am besten zusätzlich mit anonymisierten Daten hochlädt (kann man ja zusammen zippen).
**********************
P.P.S.: Also, hier Datei anbei: https://www.herber.de/bbs/user/103057.zip
Im Blatt CSV_Import_Array habe ich einige Beispieldaten erzeugt und *dieses* Blatt mit speichern unter als Text(Tab getrennt) abgespeichert. Das liegt als zweite, .CSV-Datei im ZIP-Archiv.
Wenn ich das Import-Makro anwerfe, wird die csv ins Blatt "Import" eingelesen (der Name ist jetzt quasi doppelt vergeben, einmal als Objektname im VBA und einmal als Name des Blattes)

Anzeige
AW: evtl. anderer Ansatz
27.01.2016 14:59:10
Lukas
Michael, vielen Dank für deine Mühe. Leider funktioniert es mit deinem Code bei mir nicht.
Meine Datei ist eine .csv mit Daten von einem Datenlogger, an dem Temperatursensoren hängen. Da kommt bei einer Messung ganz schön was zusammen. Ich möchte eigentlich nur erreichen einen Code zu schreiben, der mir über eine Verzeichnisauswahl die .csv als Text importiert und in "Tabelle1" einfügt.
Hier nochmal mein aktueller Code:

Sub Datenextraktion()
Dim Datei As Variant
Dim ReadFile As String
Datei = Application.GetOpenFilename()
If Datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Else
ReadFile = Datei
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & ReadFile, Destination:=Range("$A$ _
1"))
.Name = Right(Datei, Len(Datei) - InStrRev(Datei, "\"))
.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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,  _
1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,  _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 _
, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
End With
End If

Der Code scheint zu laufen, es gibt keine Fehlermeldung. Aber die .csv wird nicht importiert.

Anzeige
Beispieldatei?
28.01.2016 15:04:08
Michael
Hi Lukas,
dann lade doch bitte mal ne abgespeckte Beispieldatei hoch.
Der Punkt ist, daß ich keine Lust habe, diesen Rattenschwanz von 1en zu zählen, um mir selber ne Datei zum Testen zu basteln.
Schöne Grüße,
Michael

AW: Beispieldatei?
28.01.2016 21:37:09
Lukas
Hier kommt die Datei. Vielen Dank schonmal für deine Hilfe!
https://www.herber.de/bbs/user/103127.zip

Anzeige
Jetzt aber
29.01.2016 00:19:20
Michael
Hi Lukas,
also, die Datei hatte so ihre Besonderheiten: wahrscheinlich wurde sie von einem Linux-System gespeichert, denn Zeilen werden nur mit LF (linefeed) anstatt wie hier üblich mit CRLF (cr=carriage return) getrennt.
Also: die Zeile mit split geändert in: a = Split(s, vbLf)
Die ersten 4 (0 bis 3) Zeilen werden einfach in einem Rutsch als Text eingelesen, die 5. enthält Überschriften, die wird aufgespalten, und alle weiteren Zeilen erfordern eine gewisse Sonderbehandlung für die Spalten mit den Werten: hier wird eine ZAHL aus dem Text erzeugt.
Sollte soweit passen.
Daß das mit dem query nicht recht funktioniert hat, könnte an den viel mehr Einsen liegen als überhaupt Spalten vorhanden sind, aber ich hab's nicht nachverfolgt.
Hier "bitgepfriemelt":
Option Explicit
'kommt in Modul 1
Sub CSV_Importieren()
Dim pfad As String
Dim datei As Variant
Dim a As Variant, a2 As Variant, az As Variant
Dim s As String
Dim i&, dNr%, z&, sp&, zl&, spZ&, zlZ&
Dim c As Range
datei = Application.GetOpenFilename()
If datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Exit Sub
End If
pfad = datei
' **************** Name der Tabelle1 wurde
' Eigenschaften-Fenster auf Import geändert
Import.Cells.Clear
dNr = FreeFile
Open pfad For Binary As #dNr
s = Space(LOF(dNr))
Get #dNr, 1, s
Close #dNr
'For i = 1 To 200
'Debug.Print i & ": " & Mid(s, i, 1) & ": " & Asc(Mid(s, i, 1))
'Next
'Stop
a = Split(s, vbLf)
zl = UBound(a)
'Stop
sp = 12
a2 = Import.Range("A1", Import.Cells(zl + 1, sp + 1))
For zlZ = 0 To 3
a2(zlZ + 1, 1) = a(zlZ)
Next
' jetzt hat zlZ den Wert 4!
az = Split(a(zlZ), vbTab)
For spZ = 0 To UBound(az)
a2(zlZ + 1, spZ + 1) = az(spZ)
Next
For zlZ = 5 To zl
az = Split(a(zlZ), vbTab)
For spZ = 0 To UBound(az)
If spZ > 2 Then   ' wegen Zählung ab 0 ab der 4. Spalte
a2(zlZ + 1, spZ + 1) = Val(Replace(az(spZ), ",", "."))
Else
a2(zlZ + 1, spZ + 1) = az(spZ)
End If
Next
Next
Import.Range("A1", Import.Cells(zl + 1, sp + 1)) = a2
End Sub
Die Datei: https://www.herber.de/bbs/user/103130.xls
Geht auch gut fix, alle 7500 in nicht spürbarer Zeit.
Schöne Grüße,
Michael

Anzeige
AW: Jetzt aber
29.01.2016 12:00:09
Lukas
Michael, das hätte ich nie alleine hingekriegt. Vielen Dank!
Kann man den Code noch anpassen, dass auch Importe mit höherer Spaltenanzahl verarbeitet werden können? Die Testdatei war in dieser Hinsicht sehr überschaubar, es sind normalerweiße über 100 Spalten (=Sensoren) in Gebrauch. Da funktioniert der Code noch nicht.

Anzeige
AW: Jetzt aber
29.01.2016 12:20:11
Michael
Hi Lukas,
dann wundert es mich nicht, daß da so viele 1-en drin waren...
Es wird in der Zeile sp = 12 auf 12 gesetzt.
Für unterschiedliche Spaltenanzahlen habe ich das so geändert, daß sie anhand der Überschriftenzeile ermittelt werden:
Option Explicit
'kommt in Modul 1
Sub CSV_Importieren()
Dim pfad As String
Dim datei As Variant
Dim a As Variant, a2 As Variant, az As Variant
Dim s As String
Dim i&, dNr%, z&, sp&, zl&, spZ&, zlZ&
Dim c As Range
datei = Application.GetOpenFilename()
If datei = False Then
MsgBox ("Datenextraktion abgebrochen.")
Exit Sub
End If
pfad = datei
' **************** Name der Tabelle1 wurde
' Eigenschaften-Fenster auf Import geändert
Import.Cells.Clear
dNr = FreeFile
Open pfad For Binary As #dNr
s = Space(LOF(dNr))
Get #dNr, 1, s
Close #dNr
'For i = 1 To 200
'Debug.Print i & ": " & Mid(s, i, 1) & ": " & Asc(Mid(s, i, 1))
'Next
'Stop
a = Split(s, vbLf)
zl = UBound(a)
'Stop
' hinter die erste For-Schleife versetzt ************
' sp = 12
' a2 = Import.Range("A1", Import.Cells(zl + 1, sp + 1))
For zlZ = 0 To 3
'  a2(zlZ + 1, 1) = a(zlZ) *****************************
'  die ersten vier Zeilen direkt in die Tabelle...
Import.Range("A" & zlZ + 1) = a(zlZ)
Next
az = Split(a(zlZ), vbTab)
sp = UBound(az)
a2 = Import.Range("A1", Import.Cells(zl + 1, sp + 1))
For spZ = 0 To UBound(az)
a2(zlZ - 3, spZ + 1) = az(spZ)
Next
For zlZ = 5 To zl
az = Split(a(zlZ), vbTab)
For spZ = 0 To UBound(az)
If spZ > 2 Then
a2(zlZ - 3, spZ + 1) = Val(Replace(az(spZ), ",", "."))
Else
a2(zlZ - 3, spZ + 1) = az(spZ)
End If
Next
Next
Import.Range("A5", Import.Cells(zl + 1, sp + 1)) = a2
End Sub
Schöne Grüße,
Michael
Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Dateien in Excel mit VBA einlesen und öffnen


Schritt-für-Schritt-Anleitung

Um eine Datei in Excel über VBA zu öffnen und die Daten einzulesen, kannst du folgenden Code verwenden:

Sub Datenübernahme()
    Dim Datei As Variant
    Dim ReadFile As String
    Datei = Application.GetOpenFilename()

    If Datei = False Then
        MsgBox ("Datenextraktion abgebrochen.")
    Else
        ReadFile = Datei
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & ReadFile, Destination:=Range("$A$1"))
            .Name = Right(Datei, Len(Datei) - InStrRev(Datei, "\"))
            .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, 1, 1, 1, 1) ' Anpassung je nach Spaltenanzahl
            .TextFileTrailingMinusNumbers = True
        End With
    End If
End Sub

Dieser Code ermöglicht es dir, eine Textdatei oder CSV-Datei auszuwählen und deren Inhalt in "Tabelle1" einzulesen.


Häufige Fehler und Lösungen

  1. Fehler: Die Datei wird nicht eingelesen.

    • Lösung: Stelle sicher, dass der Pfad zur Datei korrekt übergeben wird. Im Code muss ReadFile den vollständigen Pfad zur Datei enthalten.
  2. Fehler: Leere Zellen nach dem Einlesen.

    • Lösung: Überprüfe die Trennzeichen in deiner Datei. Stelle sicher, dass du das richtige Trennzeichen in den Parametern wie .TextFileTabDelimiter, .TextFileCommaDelimiter etc. angibst.
  3. Fehler: "Datenextraktion abgebrochen." Meldung erscheint.

    • Lösung: Dies passiert, wenn du im Datei-Dialogfenster auf "Abbrechen" klickst. Stelle sicher, dass du eine Datei auswählst.

Alternative Methoden

Es gibt mehrere alternative Methoden, um Daten in Excel mit VBA einzulesen:

  • Binärdatei öffnen: Verwende Open und Get für das Einlesen von Binärdateien.
  • Direktes Einlesen von Excel-Dateien: Mit Workbooks.Open kannst du Excel-Dateien direkt öffnen und die Daten auslesen.

Beispiel zum Einlesen einer Binärdatei:

Sub BinärdateiEinlesen()
    Dim pfad As String
    Dim datei As Variant
    Dim s As String
    Dim dNr As Integer

    datei = Application.GetOpenFilename()
    If datei = False Then
        MsgBox ("Datenextraktion abgebrochen.")
        Exit Sub
    End If

    pfad = datei
    dNr = FreeFile
    Open pfad For Binary As #dNr
    s = Space(LOF(dNr))
    Get #dNr, 1, s
    Close #dNr

    ' Hier kannst du den Inhalt verarbeiten
    MsgBox s
End Sub

Praktische Beispiele

  1. Einlesen einer CSV-Datei mit Temperaturdaten:
Sub CSV_Importieren()
    Dim pfad As String
    Dim datei As Variant
    Dim a As Variant
    Dim s As String
    Dim dNr As Integer

    datei = Application.GetOpenFilename()
    If datei = False Then
        MsgBox ("Datenextraktion abgebrochen.")
        Exit Sub
    End If

    pfad = datei
    dNr = FreeFile
    Open pfad For Binary As #dNr
    s = Space(LOF(dNr))
    Get #dNr, 1, s
    Close #dNr

    a = Split(s, vbLf) ' Zeilen anhand von Zeilenumbrüchen trennen
    ' Hier kannst du die Daten in die Tabelle einfügen
End Sub
  1. Einlesen einer TXT-Datei:
Sub TXT_DateiEinlesen()
    ' Gleiches Prinzip wie bei der CSV-Datei
End Sub

Tipps für Profis

  • Verwende Error Handling: Füge On Error Resume Next hinzu, um Fehler während der Ausführung zu behandeln.
  • Überprüfe die Datei vor dem Einlesen: Verwende Dir-Funktion, um sicherzustellen, dass die Datei existiert, bevor du versuchst, sie zu öffnen.
  • Daten automatisch formatieren: Nutze .TextFileColumnDataTypes, um die Datentypen der eingelesenen Spalten automatisch zu setzen.

FAQ: Häufige Fragen

1. Wie kann ich eine Excel-Datei mit VBA öffnen?
Du kannst Workbooks.Open("Dateipfad") verwenden, um eine Excel-Datei zu öffnen und die Daten zu lesen.

2. Was ist der Unterschied zwischen QueryTables und Open?
QueryTables wird verwendet, um Daten aus Text- oder CSV-Dateien einzulesen und zu formatieren, während Open für das Öffnen von Excel-Dateien oder das Lesen von Binärdateien verwendet wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige