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

Tabellen in Datei kopieren

Tabellen in Datei kopieren
Tobiax
Hallo!
Ich möchte gerne einige meiner Tabellen per Makro in eine Andere Datei kopieren.
Allerdings sollen nur die Werte und das Format in den 4 Tabellenblätter übernommen werden. Die Formeln nicht.
Die beiden Dateien liegen IMMER im selben Ordner.
Kann mir jmd helfen?
Toby ...

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

Betreff
Benutzer
Anzeige
AW: Tabellen in Datei kopieren
25.07.2009 09:06:13
Tino
Hallo,
versuche es mal mit diesem Code.
Die Dateien dürfen nicht geschützt sein und die Tabellen auch nicht.
Pfad musst Du noch anpassen.
Option Explicit

Private Function AlleTabellen(objWB As Workbook)
Dim meAr() As String
Dim i As Integer, ii As Integer

For i = 1 To objWB.Sheets.Count
 If objWB.Sheets(i).Visible = xlSheetVisible Then
    Redim Preserve meAr(ii)
    meAr(ii) = objWB.Sheets(i).Name
    ii = ii + 1
 End If
Next i

AlleTabellen = meAr
End Function

Sub AlleDateien()
Dim strFile As String
Dim objFile As Workbook, tempFile As Workbook
Dim objSH As Worksheet
Dim iCalc As Integer

'Pfad anpassen, am ende auf \ achten ********* 
Const strPath As String = "C:\Mein Ordner\"

With Application
 iCalc = .Calculation
 .Calculation = xlCalculationManual
 .EnableEvents = False
 .ScreenUpdating = False

    strFile = Dir(strPath & "*.xls")
    
    Do While strFile <> ""
      
      If strFile Like "*.xls" Then
           Set tempFile = Workbooks.Open(strPath & strFile, , True)
        
           If objFile Is Nothing Then
            tempFile.Sheets(AlleTabellen(tempFile)).Copy
            Set objFile = ActiveWorkbook
           Else
            tempFile.Sheets(AlleTabellen(tempFile)).Copy After:=objFile.Sheets(objFile.Sheets.Count)
           End If
        
           tempFile.Close False
       End If
        
       strFile = Dir()
    
    Loop
    
    For Each objSH In objFile.Worksheets
     objSH.UsedRange.Value = objSH.UsedRange.Value
    Next objSH
 
 .Calculation = iCalc
 .EnableEvents = True
 .ScreenUpdating = True
End With
End Sub
Gruß Tino
Anzeige
AW: Tabellen in Datei kopieren
27.07.2009 11:35:55
Tobiax
Hallo!
Das Makro funktioniert nicht. Er packt mir alle Excel Dateien aus dem Ordner zusammen in eine.
Ich möchte aus der Datei x, 5 bestimmt Tabellenblätter in eine neue Datei kopiert haben.
Toby ...
AW: Tabellen in Datei kopieren
27.07.2009 11:58:40
Tino
Hallo,
vielleicht so,
in der Function kannst Du ja durch weitere If abfragen, bestimmte Tabellen ein oder ausschließen.
Private Function AlleTabellen(objWB As Workbook)
Dim meAr() As String
Dim i As Integer, ii As Integer

'hier eventuell mit If weitere Tabellen ein oder ausschließen 
For i = 1 To objWB.Sheets.Count
 If objWB.Sheets(i).Visible = xlSheetVisible Then
    Redim Preserve meAr(ii)
    meAr(ii) = objWB.Sheets(i).Name
    ii = ii + 1
 End If
Next i

AlleTabellen = meAr
End Function

Sub AlleDateien()
Dim strFile As String
Dim objFile As Workbook, tempFile As Workbook
Dim objSH As Worksheet
Dim iCalc As Integer

'Pfad anpassen, am ende auf \ achten ********* 
Const strPath As String = "C:\Mein Ordner\"

With Application
 iCalc = .Calculation
 .Calculation = xlCalculationManual
 .EnableEvents = False
 .ScreenUpdating = False

    strFile = Dir(strPath & "*.xls")
    
    Do While strFile <> ""
      
          If strFile Like "*.xls" Then
                   Set tempFile = Workbooks.Open(strPath & strFile, , True)
    
                   tempFile.Sheets(AlleTabellen(tempFile)).Copy
                   Set objFile = ActiveWorkbook
                   tempFile.Close False
                   
                   For Each objSH In objFile.Worksheets
                     objSH.UsedRange.Value = objSH.UsedRange.Value
                   Next objSH
           End If
            
           strFile = Dir()
    
    Loop
    

 
 .Calculation = iCalc
 .EnableEvents = True
 .ScreenUpdating = True
End With
End Sub
Gruß Tino
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige