Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1608to1612
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

Tabellenblätter in Masterfile kopieren & speichern

Tabellenblätter in Masterfile kopieren & speichern
02.03.2018 17:26:46
Stephan
Hallo liebes Forum,
ich bin noch blutiger Anfänger was VBA angeht und hoffe sehr, dass ihr mir weiter helfen könnt.
Ich habe jede Menge Export-Dateien (je eine Excel-Datei mit nur einem Tabellenblatt - das Tabellenblatt heißt u.U. immer anders), die ich per VBA jeweils einzeln ins zweite Tabellenblatt einer "Masterfile" (Masterfile.xlsx) kopieren möchte.
Nachdem das Tabellenblatt in das Masterfile kopiert wurde soll das Masterfile mit dem dem ursprünglichen Namen der Exportdatei gespeichert werden.
Das Ganze soll dann per Loop mit allen Dateien passieren, welche in dem Export-Ordner liegen.
Zum Hintergrund: In Tabellenblatt 1 der Masterfile stehen sehr viele Formeln, die auf die Inhalte des Tabellenblatts zwei zugreifen.
Was ich bereits hinbekommen habe ist, dass der Name der Exportdatei in die Zelle "Z1" eingefügt wird und per Loop auf alle Dateien angewendet wird. Hierzu habe ich folgenden Code verwendet:
Sub Test()
Dim cDir As String
Dim sPath As String
Dim dName As String
sPath = "H:\Export\"
cDir = Dir(sPath & "*.xml")
Do While cDir  ""
Workbooks.Open (sPath & cDir)
dName = ActiveWorkbook.Name
ActiveWorkbook.ActiveSheet.Range("Z1").Value = dName
ActiveWorkbook.SaveAs "H:\Export\Test\" & cDir
ActiveWorkbook.Close False
'nächste Datei lesen
cDir = Dir
Loop
End Sub
Viele Grüße,
Stephan

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblätter in Masterfile kopieren & speichern
05.03.2018 16:31:02
UweD
Hallo
ungetestet...
Fragen im Code...
Sub Test()
    Dim cDir As String
    Dim sPath As String
    Dim dName As String
    Dim WB1 As Workbook, WB2 As Workbook, TB1 As Worksheet, TB2 As Worksheet

    Set WB1 = Workbooks("Master.xlsm") 'oder wirklich xlsx? Wo liegt dann dieses Makro? 
    
    Set TB1 = WB1.Sheets("Tabelle2") ' Das Zielblatt 
    
    
    sPath = "H:\Export\"
    cDir = Dir(sPath & "*.xml")
    
    
    Do While cDir <> ""
        Workbooks.Open (sPath & cDir)
        
        Set WB2 = ActiveWorkbook
        Set TB2 = WB2.Sheets(1) 'das erste Blatt der gerade geöffneten Datei 
        
        TB2.Range("Z1").Value = WB2.Name
        'Was soll denn noch von dem Blatt 1 kopiert werden und wohin? 
        
        'Beispiel: 
        TB1.Range("B5") = TB2.Range("B77")
        TB1.Range("A1:A10") = TB2.Range("B100:B110")
        TB1.Columns(2) = TB2.Columns(5)
        '... 
        
        
        
        
        WB2.SaveAs sPath & "Test\" & cDir
        WB2.Close False
        
        'nächste Datei lesen 
        cDir = Dir
    Loop
End Sub

LG UweD
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige