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:
1861
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 ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • 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
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • 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

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