Office: Makro kürzt Dateinamen bei Import

Helfe beim Thema Makro kürzt Dateinamen bei Import in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hi zusammen, da ich kein VBA Profi (sondern wenn überhaupt Anfänger bin) habe ich mir ein Makrocode zusammengeklaut um 20 .csv Dateien automatisiert... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Offlon608, 14. März 2015.

  1. Offlon608 Erfahrener User

    Makro kürzt Dateinamen bei Import


    Hi zusammen,

    da ich kein VBA Profi (sondern wenn überhaupt Anfänger bin) habe ich mir ein Makrocode zusammengeklaut um 20 .csv Dateien automatisiert in eine Excel zu importieren. Sinn ist, dass die CSV aus einer Datenbank kommen und immer mal wieder aktualisiert werden und ich die mit excel dann auswerte. Code sieht folgendermaßen aus:

    Code:
    Sub ImportiereCSVDateien()
        Const CSVPFAD = "E:\csv-dateien"
        Dim wbTarget As Workbook, wbSource As Workbook, ws As Worksheet
        Set fso = CreateObject("Scripting.Filesystemobject")
        Set wbTarget = ActiveWorkbook
        Application.DisplayAlerts = False
        'Lösche alle Worksheets bevor wir alle neu anlegen
        If wbTarget.Worksheets.Count > 5 Then
            For i = 6 To i = 50
            'Damit der erst beim sechsten Sheet anfängt
                wbTarget.Worksheets(i).Delete
                'Jetzt wurden die alten Sheets löschen
            Next
        End If
        For Each f In fso.GetFolder("N:\01_GF-Intern\01_Strategie\ITE-Strategie\HRM2\Gesamtdaten\11.03.2015").Files
        'Alle Dateien aus dem Ordner sichten
            If LCase(Right(f.Name, 3)) = "csv" Then
            'Alle Dateien mit der Endung "csv" werden beachtet
                Workbooks.OpenText Filename:=f.Path
                Set wbSource = ActiveWorkbook
                On Error Resume Next
                Set ws = wbTarget.Worksheets(f.Name)
                If Err <> 0 Then
                    Set ws = wbTarget.Worksheets.Add
                    ws.Name = f.Name
                    ws.Range("A:ZZ").Clear
                End If
            
                wbSource.Worksheets(1).Range("A:A").TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Semicolon:=True, TrailingMinusNumbers:=True
                wbSource.Worksheets(1).Range("A:ZZ").Copy Destination:=ws.Range("A1")
                wbSource.Close False
            End If
        Next
        Application.DisplayAlerts = True
        Set fso = Nothing
    End Sub
    Das Problem ist nun, dass zwei der CSV Dateien einen sehr langen Dateinamen haben. Diese Sheetnamen dieser CSVs werden immer abgeschnitten beim Import. Das Problem wenn ich über das Makro dann alle Dateien auswechsle ist, dass er die beiden Dateien dann mit den Namen Tabelle1 und Tabelle2 beim nächsten Import mit Tabelle3 und Tabelle4 betitelt. Dadurch sind die Bezüge dann logischerweise verschoben.

    Gibt es eine Möglichkeit dem Makro zu sagen, dass er den KOMPLETTEN Dateinamen als Sheetnamen verwenden soll?

    Ich hoffe ich habe mich halbwegs klar ausgedrückt. Ansonsten freue ich mich über Rückfragen oder Lösungsansätze :-)

    Viele Grüße und ein schönes Wochenende
     
    Offlon608, 14. März 2015
    #1
  2. maninweb
    maninweb MVP für Microsoft Excel
    Hallo,

    wenn die Dateinamen länger als 31 Zeichen sind, geht das nicht, denn Tabellennamen können nicht mehr als 31 Zeichen enthalten. Wenn die Dateinamen der CSV's so aufgebaut sind, dass z.B. immer die ersten 16 Zeichen einen eindeutigen Namen ergeben, könntest Du immer die ersten 16 Zeichen verwenden: ws.Name = Left(f.Name, 16) Ansonsten wäre zu klären, wieviele CSV's es sind und ob nicht vielleicht Platzhaltertabellen verwendet werden können oder eine Mapping-Tabelle. Dafür kenne ich abder den Aufbau Deiner Mappe nicht.

    Gruß
     
    maninweb, 15. März 2015
    #2
  3. Offlon608 Erfahrener User
    Hallo,

    vielen Dank, genau das habe ich gesucht. Ab dem 30. Zeichen gab es Eindeutigkeiten :-)

    Liebe Grüße
     
    Offlon608, 16. März 2015
    #3
Thema:

Makro kürzt Dateinamen bei Import

Die Seite wird geladen...
  1. Makro kürzt Dateinamen bei Import - Similar Threads - Makro kürzt Dateinamen

  2. Makro Zip-Datei von Webseite runterladen, auspacken, kopieren

    in Microsoft Excel Hilfe
    Makro Zip-Datei von Webseite runterladen, auspacken, kopieren: Hallo Zusammen, ich habe ein Makro gefunden von dem ich denke, dass es koennen sollte was ich braeuchte, eine Datei herunterladen, auspacken und den Inhalt in die Datei kopieren in der das Makro...
  3. Makro für variable Anzahl von Datensätzen

    in Microsoft Excel Hilfe
    Makro für variable Anzahl von Datensätzen: Hallo zusammen, ich habe wieder einmal ein kleines Excel-Problem, bei dem Ihr mir sicherlich helfen könnt. Ich habe eine Excel-Liste, das ist ein Export aus einem anderen Programm (siehe...
  4. Makro aus personal.xls starten

    in Microsoft Excel Hilfe
    Makro aus personal.xls starten: Auf einem Arbeitsblatt habe ich mehrere Buttons. Die zugehörigen Makros sind in personal.xls gespeichert. Aus dem Code-Editor heraus kann ich die Makros ohne Problem starten. auf dem Arbeitsblatt...
  5. Dokumente und Blatt umbenennen

    in Microsoft Word Hilfe
    Dokumente und Blatt umbenennen: Ich lade mir jeden Tag csv-Dateien von meiner Bank herunter. Diese sind mit Datum versehen, also die Datei selbst und das erste Blatt, z.B. "Konto_13.02.2024". Wenn ich ein Makro erstelle, in dem...
  6. Speichern mit dem Titel der Zelle A2

    in Microsoft Excel Hilfe
    Speichern mit dem Titel der Zelle A2: Moin moin, Ich habe per Makro einen Arbeitsablauf aufgezeichnet der soweit auch funktioniert. Dieser Endet jedoch im "Speichern Unter" Fenster, welches durch das Klicken von "Drucken als PDF"...
  7. Barcode Scanliste Makro anpassen

    in Microsoft Excel Hilfe
    Barcode Scanliste Makro anpassen: Hallo zusammen! Einer der Mitglieder hier hat mir eine Funktionsliste erstellt, mit der man Barcodes scannt und danach einen Wert über die Bildschirmtastatur eingibt. Die Barcodes hatten bisher...
  8. Makro wird nicht angezeigt im Makro Auswahlfenster

    in Microsoft Excel Hilfe
    Makro wird nicht angezeigt im Makro Auswahlfenster: Hallo, wenn ich mein Makro ausführen möchte, öffnet sich das Makro Auswahlfenster. Allerdings wird das Makro nicht aufgelistet. Das Makro befindet sich in der PERSONAL.xlsb Arbeitsmappe. Die...
Schlagworte:
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden