MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

 
Ads
Themen-Optionen Ansicht
Alt 22.04.2009, 19:42   #1
OfficeUser321
Neuer Benutzer
Neuer Benutzer
Standard VBA - Makro ist brutal langsam

Hallo VBAler,
ich habe ein Makro, das jedes Sheet einer Datei anwählt, in einer festgelegten Range "#Ref!" durch "Tabelle1" ersetzt, zum nächsten Sheet springt, dort "#Ref!" ersetzt etc, bis alle Sheets durch sind und ich glücklich bin (naja, fast):
Code:

Sub ersetzen()
Application.ScreenUpdating = False
Dim wks As Double

sheets(1).Range("A1") = Worksheets.Count
wks = 0
Do Until wks = Worksheets.Count
Worksheets(wks + 1).Activate
raus = "#REF!"
rein = "Tabelle1!"
    For Each Cell In Selection
        Range("B16:AE100").Select
        If Cell.HasFormula = True Then
            Cell.Formula = Application.WorksheetFunction.Substitute(Cell.Formula, raus, rein)
        End If
    Next Cell
wks = wks + 1
Loop

End Sub
Ich habe jetzt zweierlei Problem. Einmal ist das Makro brutal langsam, legt sicherlich für 4 Minuten meinen Rechner lahm, da es 40 Sheets durchsuchen muss. Hat da jemand eine Idee, wie man das performanter gestalten könnte?
Der zweite Knackpunkt ist, dass das Makro nur bis zum vorletzten Sheet funktioniert, im letzten Sheet läuft es vor den Pöller: Anwendungs- oder objektdefinierter Fehler
Das passiert immer im letzten Sheet. Schuld ist diese Zeile:
Code:

Cell.Formula = Application.WorksheetFunction.Substitute
Hat jemand eine Idee, damit es funktioniert und ein wenig flotter wird?
Schonmal Danke im Vorraus!

Office User
OfficeUser321 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:03 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.