Fehler in VBA Skript
Hallo Zusammen,
nun bin ich mit meine „Problem“ etwas weiter:
Ich habe folgendes VBA Skript:
Dim DateiName
DateiName = Application.GetOpenFilename("Textdateien (*.txt), *.txt")
Range("B1").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;R:\xxx.txt", Destination _
:=Range("B1"))
.Name = "dsc2"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1)
.TextFileDecimalSeparator = "."
.TextFileThousandsSeparator = ","
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End Sub
Nun soll aber nicht die Datei xxx.txt geöffnet werden, sondern die Datei die ich zuvor mit Dateiname festgelegt habe.
Leider hab ich schon einige Varianten getestet und keine Funktioniert.
Weis jemand wie die richtige Lösung lautet?
Vielen Dank
Trudi
Antwort schreiben
Antwort 1 von Arno_Nym vom 28.05.2020, 17:19 Options
Zuerst die Connection-Zeichenfolge zusammenbauen und dann einsetzen:
Dim DateiName, [b]ConnString[/b]
DateiName = Application.GetOpenFilename("Textdateien (*.txt), *.txt")
[b]ConnString [/b]= "TEXT;" & DateiName
With ActiveSheet.QueryTables.Add(Connection:=[b]ConnString[/b], Destination:=Range("B1"))
.Name = "dsc2"
.FieldNames = True
.
usw.
Arno
Antwort 2 von Trudi vom 29.05.2020, 08:38 Options
Hallo Arno,
Super vielen Dank das Funktioniert
Viele Grüße
Trudi