Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Import von csv-datei | Herbers Excel-Forum


Betrifft: Import von csv-datei von: Günter
Geschrieben am: 20.01.2010 10:11:52

Guten Morgen,

ich hätte eine Frage:
Für einen Import habe ich unten stehendes Makro gefunden.

Für meinen Fall müßte ich aber als Delimiter eine # (Raute) verwenden.
Um es noch komfortabler zu gestalten müßte auch noch folgendes passieren:
-Spalte A sollte automatisch in Zahlenformat (ohne Kommastellen) formatiert werden.
-Die Datei sollte automatisch als Excel-Datei (selben Namen und Pfad) gespeichert werden.

Könnte mir da ein Excelexperte helfen?

Schönen Gruß

Sub csv_importieren()
    Dim impfile As String
    impfile = Application.GetOpenFilename("CSV Dateien (*.csv),*.csv", Title:="Import File auswä _
 _
hlen", buttontext:="Import starten", MultiSelect:=False)
    If impfile = "" Then
        MsgBox "Import abgebrochen", vbOKOnly + vbInformation, "Abbruch"
        Exit Sub
    Else
        With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & impfile & "", Destination:=Range( _
 _
"$A$1"))
            .Name = ""
            .FieldNames = True
            .PreserveFormatting = True
            .RefreshOnFileOpen = True
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
        End With
    End If
End Sub

  

Betrifft: Rec .. Import von csv-Datei von: Mike
Geschrieben am: 20.01.2010 11:06:44


Hey Günter,

nimm doch Deine Import-Aktivität mit dem Makro-Rekorder auf,
so hast Du dann genau das Makro für Deine Bedürfnisse.

Gruss
Mike


  

Betrifft: AW: Rec .. Import von csv-Datei von: Günter
Geschrieben am: 20.01.2010 11:16:52

Hallo Mike,

kam auch schon auf die Idee.
Aber es sind wieder andere Datei(en)/Namen zum Importieren.

Gruß
Günter


  

Betrifft: AW: Rec .. Import von csv-Datei von: Mike
Geschrieben am: 20.01.2010 12:20:00


Hey Günter,

dann lass den Dateinamen variabel (hier ein Bsp mit .txt):

Sub A__Abschluss_BIER_importieren()

ChDir "U:\"

Dim fn
fn = Application.GetOpenFilename("Textdateien, *.txt", , "Bitte Datei auswählen")
If fn = False Then MsgBox "Abbruch": Exit Sub
'MsgBox fn
Workbooks.OpenText Filename:=fn, Origin:=xlMSDOS, _ ...

Gruss
Mike


  

Betrifft: AW: Import von csv-datei von: Günter
Geschrieben am: 20.01.2010 12:48:16

Danke Mike,

nur, wie gebe ich den Delimiter # (also die Raute) an?

Gruß
Günter


  

Betrifft: AW: Import von csv-datei von: Luschi
Geschrieben am: 20.01.2010 13:09:53

Hallo Günter,

schau Dir doch mal diese Variante an, da kann man das '#' als Trennzeichen angeben:
https://www.herber.de/forum/messages/1131232.html

An den 2 Stellen, wo in Rudis Vba-Lösung ";" steht, schreibst Du "#".

Gruß von Luschi
aus klein-Paris


Beiträge aus den Excel-Beispielen zum Thema "Import von csv-datei"