Bereich kopieren von Datei zu anderen

Bild

Betrifft: Bereich kopieren von Datei zu anderen
von: Franky
Geschrieben am: 21.07.2015 16:34:17

Hey Leute,
komme hier einfach nicht weiter, habe schon mehrere Möglichkeiten Probiert und das Netz durchsucht. Aber kein Positiven Effekt.
Folgendes habe ich vor:
Beim öffnen von Datei1 wird erst die aktuelle Woche geprüft, habe ich eine neue Woche,
Soll Datei2 geöffnet werden und aus Sheet1 von Spalte A bis K beginnend in Zeile2 alle Zeile mit Inhalt in Datei1 sheet1 kopiert werden (da ist die selbe Tabelle).
Also ich möchte nichts weiter als eine Wöchentliche Aktualisierung der Datei1 aus Datei2.
So folgenden Code habe ich schon:


Private Sub Workbook_Open()
Dim zeile As Integer
     
If ISOWeek(Date) <= Worksheets("Sheet2").Range("I2") Then
        Else
        Worksheets("Sheet2").Range("I2") = ISOWeek(Now())
        ActiveSheet.Protect ("#")
    
Workbooks.Open Filename:="F:\Test\Datei2.xls"
Worksheets("sheet1").Activate
ActiveSheet.Unprotect ("#")
              
Range(Cells(2, 1), Cells(Rows.Count, 10).End(x1up)).Copy
                
Workbooks("Datei1.xls").Worksheets("sheet1").Activate
Range(Cells(2, 1), Cells(Rows.Count, 10).End(x1up)).Paste
                
Workbooks("Datei2.xls").Close
End If
End Sub

Die Wochenabfrage funktioniert, aber das kopieren einfach nicht.
kann mir bitte jemand weiterhelfen.
Vielen Dank, schon mal.

Bild

Betrifft: AW: Bereich kopieren von Datei zu anderen
von: Raphael H
Geschrieben am: 21.07.2015 23:00:41
Hallo Franky,
evtl so,


Private Sub Workbook_Open()
    Dim zeile As Long
         
    If ISOWeek(Date) <= Worksheets("Sheet2").Range("I2") Then
     Else
        Worksheets("Sheet2").Range("I2") = ISOWeek(Now())
        ActiveSheet.Protect ("#")
        
        Workbooks.Open Filename:="F:\Test\Datei2.xls"
        Worksheets("sheet1").Activate
        ActiveSheet.Unprotect ("#")
        zeile = Cells(Rows.Count, 11).End(xlUp).Row
        Range(Cells(2, 1), Cells(zeile, 11)).Copy
                        
        Workbooks("Datei1.xls").Worksheets("sheet1").Activate
        
        Range(Cells(2, 1), Cells(zeile, 11)).Select
        ActiveSheet.Paste
        
        Workbooks("Datei2.xls").Close
    End If
End Sub
oder so

Sub Workbook_Open()
    Dim zeile As Long
         
    If ISOWeek(Date) <= Worksheets("Sheet2").Range("I2") Then
     Else
        Worksheets("Sheet2").Range("I2") = ISOWeek(Now())
        ActiveSheet.Protect ("#")
        
        Workbooks.Open Filename:="F:\Test\Datei2.xls"
        Worksheets("sheet1").Activate
        ActiveSheet.Unprotect ("#")
        zeile = Cells(Rows.Count, 11).End(xlUp).Row
        
        Range(Cells(2, 1), Cells(zeile, 11)).Copy _
            Workbooks("Datei1.xls").Worksheets("sheet1").Range(Cells(2, 1), Cells(zeile, 11))
                        
        Workbooks("Datei2.xls").Close
    End If
End Sub


Bild

Betrifft: AW: Bereich kopieren von Datei zu anderen
von: Franky
Geschrieben am: 22.07.2015 08:26:20
Hey,
Danke für deine Hilfe, habe es Probiert,
aber ich bekomme immer Laufzeitfehler 9 "Index außerhalb des gültigen Bereichs"
Und ich sehe einfach nicht warum.
mein Code sieht jetzt wie folgend aus


Private Sub Workbook_Open()
Dim zeile As Long
    
If ISOWeek(Date) <= Worksheets("sheet2").Range("I2") Then
Else
Worksheets("sheet2").Range("I2") = ISOWeek(Now())
    
Workbooks.Open Filename:="F:\Test\Datei2.xls"
Worksheets("sheet1").Activate
ActiveSheet.Unprotect ("#")
            
zeile = Cells(Rows.Count, 11).End(x1up).Row
            
Range(Cells(2, 1), Cells(zeile, 11)).copy_
                
Workbooks("Datei1.xls").Worksheets("sheet1").Activate
                
Range(Cells(2, 1), Cells(zeile, 11)).Select
ActiveSheet.Paste
                       
Workbooks("Datei2.xls").Close
End If
End Sub
Die Datei2 wird noch geöffnet und dann kommt die Fehlermeldung.
Sieht irgendjemand den Fehler.
Vielen Dank.

Bild

Betrifft: ja, es heisst XLUP und nicht X1UP
von: Raphael H
Geschrieben am: 22.07.2015 09:24:00


Bild

Betrifft: AW: ja, es heisst XLUP und nicht X1UP
von: Franky
Geschrieben am: 22.07.2015 09:37:31
Hey.
das ist ein kleines "l" und keine 1.
Daran liegt es leider nicht.

Bild

Betrifft: ist definitv ne 1 bei dir
von: Raphael H
Geschrieben am: 22.07.2015 13:51:17


xlup (L)
x1up (1)


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Bereich kopieren von Datei zu anderen"