Office: Excel Datei über Makro importieren

Helfe beim Thema Excel Datei über Makro importieren in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich will eine Excel-Datei über VBA importieren. Problem an der Sache ist, dass sich der Name der Datei ändert. Die Datei wird... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von dobby110, 22. Oktober 2013.

  1. dobby110 Erfahrener User

    Excel Datei über Makro importieren


    Hallo zusammen,

    ich will eine Excel-Datei über VBA importieren.
    Problem an der Sache ist, dass sich der Name der Datei ändert.
    Die Datei wird einmal am Tag generiert und mit Datum und Uhrzeitstempel versehen. Das Datum bekäme man ja noch gelöst, aber bei der Uhrzeit unmöglich.

    Kann mir jemand sagen, wie ich die Datei trotzdem automatisch über VBA importiert bekomme?

    Der Name der Datei ist bspw.

    CN_SNV_LU_BSP_SNV_20131022082051.csv

    Ich würde gerne das Datum noch vorgeben, da es die Datei nur einmal am Tag und mit diesem Datumsstempel gibt. Die Uhrzeit jedoch offen bleibt.
    Also brauche ich ein Befehl der sagt, öffne die Datei die wie folgt beginnt:

    CN_SNV_LU_BSP_SNV_20131022


    Ich habe folgendes Makro als Vorlage und so gehe ich normalerweise vor, wenn ich den Namen der Datei kenne.

    Code:
    Sub Anteil_importieren() 
    
        Dim ReportName As String 
        
        Sheets("Kontrolle Anteil").Select 
        Columns("A:AA").Select 
        Selection.ClearContents 
        ReportName = "J:\XYZ\ABC\NAME DER DATEI.csv" 
        Workbooks.Open Filename:=ReportName, UpdateLinks:=0 
        Columns("A:I").Select 
        Selection.Copy 
        Windows("_Kontrolle Anteil.xlsm").Activate 
        Sheets("Kontrolle Anteil").Select 
        Range("A1").Select 
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 
        Application.CutCopyMode = False 
        Windows ("NAME DER DATEI.csv").Activate 
        ActiveWorkbook.Close 
        Windows("_Kontrolle Anteil.xlsm").Activate 
        Sheets("Übersicht").Select 
            
    End Sub 
    


    Kann mir bei dem Problem jemand weiterhelfen?

    Vorab schon einmal vielen Dank
    Martin
     
    dobby110, 22. Oktober 2013
    #1
  2. Exl121150 Erfahrener User
    Hallo Martin,

    anstelle der 1. blauen Zeile fügst Du Folgendes ein:
    Reportname = Dir("J:\XYZ\ABC\CN_SNV_LU_BSP_SNV_" & Format(Now(),"YYYYMMDD") & "*.csv")
    und anstelle der 2. blauen Zeile fügst Du diese VBA-Anweisung ein:
    Windows(Reportname).Activate
     
    Exl121150, 22. Oktober 2013
    #2
  3. dobby110 Erfahrener User
    Vielen Dank für die Hilfe.
    Leider bekomme ich an dieser Stelle eine Fehlermeldung
    Also direkt nach der ersten blauen Zeile.


     
    dobby110, 24. Oktober 2013
    #3
  4. Beverly
    Beverly Erfahrener User

    Excel Datei über Makro importieren

    Hi Martin,

    versuche es mal nach diesem Prinzip:

    Code:
    Sub Anteil_importieren()
       Dim strPfad As String
       Dim strDatei As String
       strPfad = "J:\XYZ\ABC\"
       Sheets("Kontrolle Anteil").Columns("A:AA").ClearContents
       strDatei = Dir(strPfad & "*.csv")
       Do While strDatei <> ""
          If InStr(strDatei, "CN_SNV_LU_BSP_SNV_20131022") > 0 Then
             Workbooks.Open Filename:=strPfad & strFile
             Columns("A:I").Copy
             Workbooks("_Kontrolle Anteil.xlsm").Sheets("Kontrolle Anteil").Range("A1").PasteSpecial _
                Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
             Workbooks(strDatei).Close
             Exit Do
          End If
          strDatei = Dir()
       Loop
    End Sub
    Bis später,
    Karin
     
    Beverly, 24. Oktober 2013
    #4
  5. Exl121150 Erfahrener User
    Hallo Martin,

    ich hatte leider übersehen, dass die Dir()-Funktion nur den Dateinamen liefert und nicht auch den Dateipfad. Deswegen versuchte das Makro die Datei ohne Pfad zu öffnen, was natürlich fehl schlagen musste.
    Nachfolgend nochmals das Makro und zwar diesmal ohne den überflüssigen Selects des Makrorecorders:
    Code:
    Sub Anteil_importieren()
      '
      Dim Pfad As String, ReportName As String
      Dim Blatt As String, Mappe As String
      '
      Blatt$ = "Kontrolle Anteil"
      Mappe$ = ActiveWorkbook.Name
      Sheets(Blatt$).Columns("A:AA").ClearContents
      '
      Pfad$ = "J:\XYZ\ABC\"
      ReportName$ = "CN_SNV_LU_BSP_SNV_" & Format(Now(), "YYYYMMDD") & "*.csv"
      ReportName$ = Dir(Pfad$ & ReportName$, vbNormal)
      Workbooks.Open Filename:=Pfad$ & ReportName$
      '
      Columns("A:I").Copy
      Workbooks(Mappe$).Sheets(Blatt$).Range("A1").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
      Application.CutCopyMode = False
      '
      ActiveWorkbook.Close
      Sheets("Übersicht").Activate
      '
    End Sub
    
    @Karin: Dich hat leider auch (so wie mich) der Fehlerteufel beim Open-Befehl verfolgt: Es müsste wohl "strDatei" und nicht "strFile" heißen bei Dir.
     
    Exl121150, 24. Oktober 2013
    #5
  6. Beverly
    Beverly Erfahrener User
    @Anton,

    ja, an dieser Stelle muss es heißen

    Code:
    Workbooks.Open Filename:=strPfad & [COLOR=#ff0000]strDatei[/COLOR]
    
    Ändert aber nichts am Codeablauf.

    Übrigens ist bei deinem Code Bedingung, dass die Uhrzeit bekannt ist. Außerdem steht die Uhrzeit hinter dem Datum im Dateinamen und nicht davor.

    Bis später,
    Karin
     
    Zuletzt bearbeitet: 24. Oktober 2013
    Beverly, 24. Oktober 2013
    #6
  7. Exl121150 Erfahrener User
    Hallo Karin,

    der VBA-Ausdruck:
    Format(Now(),"YYYYMMDD")
    den ich verwendete, liefert zB. am heutigen Tag (das ist der 25.10.2013)
    den Stringwert "20131025".

    Genau das war ja gewünscht vom User dobby110, dass ein vom heutigen Tag abhängiges Stringelement in diesem Format im Dateinamen enthalten sein soll und der Code genau diesen Dateinamen finden soll.
     
    Exl121150, 25. Oktober 2013
    #7
  8. dobby110 Erfahrener User

    Excel Datei über Makro importieren

    Hallo nochmal.

    Der letzte Code funktioniert.
    Jetzt ist nur ein neues Problem aufgetaucht. Und zwar handelt es sich ja um eine .csv Datei.
    Wenn ich diese importiere, schreibt er mir alles in Spalte A.

    Ich hab auch noch einen Code, mit dem ich die .csv importieren kann. Aber dann hab ich wieder das Problem wegen der Uhrzeit.
     
    dobby110, 25. Oktober 2013
    #8
Thema:

Excel Datei über Makro importieren

Die Seite wird geladen...
  1. Excel Datei über Makro importieren - Similar Threads - Excel Datei Makro

  2. Name der Datei durch Excel geändert

    in Microsoft Excel Hilfe
    Name der Datei durch Excel geändert: Hallo und guten Abend, Die Datei wird mittels Button (VBA) zwischen gesichert. Das Makro sichert zuvor die Datei und erstellt zus. eine Sicherungsdatei mit der Erweiterung Beispiel-"Sich"....
  3. Word-Dateien über Excel in eine ausgewählte Word-Datei übertragen per Makro

    in Microsoft Excel Hilfe
    Word-Dateien über Excel in eine ausgewählte Word-Datei übertragen per Makro: Hallo Zusammen, ich hoffe es kann mir jemand weiterhelfen in dem Forum. Ich habe ein Makro in der Excel-Datei (Reiter: Datenbank) im Anhang, wo ich mir von allen Word-Dateien den Pfad und den...
  4. Excel Datei mit Passwort versehen obwohl Makro

    in Microsoft Excel Hilfe
    Excel Datei mit Passwort versehen obwohl Makro: Hallo, ich muss meine Excel Datei mit einem Passwort versehen oder den Zugriff für Personen beschränken aber ich bekomme eine Meldung dass ich erst alle Makros entfernen muss. Gibt es dafür eine...
  5. Excel VBA Datei durchsuchen, Datentyp prüfen und bestimmten Inhalt auslesen

    in Microsoft Excel Hilfe
    Excel VBA Datei durchsuchen, Datentyp prüfen und bestimmten Inhalt auslesen: Hallo liebe Community, ich muss mit einem VBA-Code bei einer Nessus-Datei prüfen, ob bei einer Stelle wo normalerweise eine IP-Adresse stehen sollte ein Hostname steht(z.B. HSTSERV02) (müsste...
  6. Excel Datei mit Makro auf One Drive Sichern

    in Microsoft Excel Hilfe
    Excel Datei mit Makro auf One Drive Sichern: Ich wüde gerne meine Datei PWExcel11.xlsm nach Onedrive sichern. Das Ganze sollte mit einem Makro per Knopfdruck in der Excel Datei Datei stattfinden. Verzeichniss der zu sichernden Datei...
  7. Excel Makro - Export zweier Tabellenblätter in separate Datei

    in Microsoft Excel Hilfe
    Excel Makro - Export zweier Tabellenblätter in separate Datei: Hallo in die Runde, ich stehe gerade vor einem Problem, das sicher am einfachsten über ein Makro gelöst werden kann – deren Benutzung ich allerdings nicht wirklich mächtig bin. Eine erste...
  8. Makro vor dem Schließen einer Excel Datei

    in Microsoft Excel Hilfe
    Makro vor dem Schließen einer Excel Datei: Hi, ich bräuchte mal den Code für das Makro für eine Msgbox. Wir haben nämlich immer mal wieder Praktikaten die vor dem schließen der Datein vergessen bestimmte Dinge zu aktivieren oder zu...
  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