Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Sheets in andere Datei verschieben
20.07.2011 15:38:45 Peter
*****
NotSolved
21.07.2011 12:52:13 Dekor
****
Solved

Ansicht des Beitrags:
Von:
Peter
Datum:
20.07.2011 15:38:45
Views:
1149
Rating: Antwort:
  Ja
Thema:
VBA Sheets in andere Datei verschieben

Hallo Zusammen,

ich erhalte bei folgendem Code ab und zu einen Laufzeitcode 1004. In den Excel Dokumenten sollen nur 7 Sheets erhalten bleiben,

alle anderen müssen in eine Datei alt_Dateiname.xls verschoben und Archiviert  werden. Ich habe auch schon andere Variationen z.B 1 oder ein Sheetnamen eingaetragen. Vielen Dank für eure Hilfe!

In der Fetten Zeile kommt ein Laufzeitcode 1004:

Private Sub Workbook_Open()
           Dim sheetnmr As Integer ' variable für sheets die weg kommen
            Dim anzSheets As Integer
            anzSheets = 7           'maximal x vorhandene
            sheetnmr = ActiveWorkbook.Sheets.Count 'Anzahl Arbeitsblätter
           If sheetnmr > anzSheets Then     'maximal x vorhandene
           
                Dim test As New Excel.Application  'Excel Applikationen
                
                Dim pfad As String       'pfad zur Liferantenliste
                Dim name As String       'Name des Fensters
                        
                pfad = ActiveWorkbook.Path
                name = ActiveWorkbook.name
                alt_name = "alt_" & name     'name History
                alt_pfad = pfad & "\History\"    'Pfad History
                      
                
                'Windows(name).Activate
                Workbooks.Open alt_pfad & alt_name 'History Datei öffnen
                                    
                While sheetnmr > anzSheets
                  Windows(name).Activate
                  On Error GoTo 0
                  ActiveWorkbook.Sheets(sheetnmr).Move After:=Workbooks(alt_name).Sheets(Workbooks(alt_name).Sheets.Count)  'überflüssige Sheets in History Datei verschieben
                  sheetnmr = sheetnmr - 1    'zaehler runterzaehlen
                Wend
                
                EnableEvents = False        'evtl. Meldungen deaktivieren
                Application.DisplayAlerts = True
                
                ActiveWorkbook.Save     'history speichern und schließen
                ActiveWorkbook.Close
                test.Quit
                
                Windows(name).Activate
                ActiveWorkbook.Save     'Liste speichern
           End If
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst genau und ausführlich
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
  • Bitte markieren Sie Ihre Anfrage als erledigt wenn Ihnen geholfen wurde
Thema: Name: Email:

 
 

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Sheets in andere Datei verschieben
20.07.2011 15:38:45 Peter
*****
NotSolved
21.07.2011 12:52:13 Dekor
****
Solved