in einer Arbeitsmappe wird unter anderem der Import von Datensätzen bzw. Teilen von Datensätzen aus einer Textdatei vorgenommen. Gibt es eine Möglichkeit die zu importierenden Daten (Lieferantennummern) bereits vorab -im Grunde in der Textdatei- zu filtern ? - Das heißt, z.B. anhand markierter Postleitzahlen, die in einem Listenfeld (mit Mehrfachmarkierung) innerhalb des Tabellenblattes angezeigt werden, nur die Lieferantennummern zu den jeweils gehörigen Postleitzahlen importiert werden. Der Code für den Datenimport steht unten. Ich müßte dabei auch eine Wahlmöglichkeit einbauen, ob ich vorab nach Postleitzahlen filtern möchte oder ob alle Daten (Lieferantennummern) importiert werden sollen.
Die Überschrift für die Postleitzahl innerhalb der Textdatei lautet "Haus_PLZ", der Trenner ist |
Danke schon jetzt Allen für die Rückmeldung.
Herzliche Grüße
Wolfgang
Sub Import1(Datei As String, wks As Worksheet, Ziel As String)
wks.Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & Datei, Destination:=Range(Ziel))
.Name = "KundeA"
.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
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(9, 1, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, _
9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
End Sub