Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1344to1348
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

csv-Import mit Übergabe des Dateipfads

csv-Import mit Übergabe des Dateipfads
30.01.2014 09:41:28
klaus
Hallo zusammen,
mit unterem Makro wird ein bzgl. der zu importierenden CSV-Datei ein festgelegter CSV-Import durchgeführt. Mit einer Inputbox will ich diesen ersetzen oder besser noch mit dem eigentlichen CSV-Dialog. Habt Ihr eine Idee.
Danke im voraus
Sub ImportCSV()
Dim ZeEnde As Double
Dim wks As Worksheet
Dim strPfad As String
Dim strI As String
strPfad = "C:\temp_bp\2014_01_22-000001-projects.csv"
strI = InputBox("csv-Import", "Dateipfad zur csv-Datei reinkopieren", strPfad)
Set wks = Worksheets("Import_CSV")
Rows("2:1048576").Delete
'Call BildAus
With wks.QueryTables.Add(Connection:= _
"TEXT;C:\temp_bp\2014_01_22-000001-projects.csv", Destination:=Range("$A$2"))
.Name = "2014_01_22-000001-projects"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 65001
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = True
.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)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
'Call BildAn
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: csv-Import mit Übergabe des Dateipfads
30.01.2014 11:10:19
fcs
Hallo Klaus,
mit einem Datei-Auswahldialog und einer Optimierung der zu löschendne vorhandenen Zeilen sieht es wie folgt aus.
Gruß
Franz
Sub ImportCSV()
Dim ZeEnde As Double
Dim wks As Worksheet
Dim varPfad As Variant
Dim strI As String
varPfad = Application.GetOpenFilename(FileFilter:="CSV-Dateien (*.csv),*.csv", _
Title:="Bitte zu importierende CSV-Datei auswählen")
If varPfad  False Then
strI = Mid(varPfad, InStrRev(varPfad, "\") + 1)
strI = Left(strI, InStrRev(strI, ".") - 1)
Set wks = Worksheets("Import_CSV")
With wks
.Activate
With .UsedRange
ZeEnde = .Row + .Rows.Count - 1
End With
If ZeEnde >= 2 Then
.Range(Rows(2), .Rows(ZeEnde)).Delete
End If
End With
'Call BildAus
With wks.QueryTables.Add(Connection:= _
"TEXT;" & varPfad, Destination:=wks.Range("$A$2"))
.Name = strI
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 65001
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = True
.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)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
'Call BildAn
End If
End Sub

Anzeige
AW: csv-Import mit Übergabe des Dateipfads
30.01.2014 12:42:25
klaus
hallo franz,
wie immer SUPI. erklär mir doch bitte welche string-umwandlung folg von dir erstellten code-zeilen bewirken. wird hier aus dem pfad der name ohne pfad und dateiendung extrahiert?
      strI = Mid(varPfad, InStrRev(varPfad, "\") + 1)
strI = Left(strI, InStrRev(strI, ".") - 1)
danke klaus

AW: csv-Import mit Übergabe des Dateipfads
30.01.2014 13:08:31
fcs
Hallo Klaus,
wird hier aus dem pfad der name ohne pfad und dateiendung extrahiert?
Ja
Gruß
Franz

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige