Einzelnes Blatt nicht neu berechnen

Bild

Betrifft: Einzelnes Blatt nicht neu berechnen
von: Bourtscheidt
Geschrieben am: 08.04.2005 09:34:07
Liebe Forumsteilnehmer,
ich habe zu folgendem Problem recherchiert, aber noch nicht die richtige Lösung gefunden.
Problem: Ich habe eine Mappe. In Tabelle1 befinden sich Basisdaten, die ständig aktualisiert werden. In Tabelle2 finden Berechnungen statt, die aber sehr komplex sind und sich auf eine Spalte in Tabelle1 beziehen.
Erfolgt eine Änderung in Tabelle1 werden die Berechnungen in Tabelle2 ausgeführt, was zu Zeitverzögerungen führt.
Frage: Gibt es eine Möglichkeit, die verknüpften Berechnungen in Tabelle2 per VBA so zu steuern, daß ich erst durch Drücken von F9 nach Aktivierung des Blattes Tabelle2 die Neuberechnung starte?
Schön wäre es, wenn in Tabelle1 die automatische Berechnung bestehen bleibt, weil hier die Formeln nicht so rechenaufwendig sind.
Ich habe die folgenden Lösungen gefunden, die aber nicht richtig funktionieren.
Entweder wird in beiden Tabellen gar nicht gerechnet oder nach F9 in Tabelle1 wird auch in Tabelle2 neugerechnet. Die Neuberechnung in Tabelle2 wird korrekt ausgeschaltet, wenn ich sie aktiviere. Aber das ist ja nicht ganz das, was ich suche.
Hat jemand eine Idee?
Viele Grüße
Volker aus Köln


Private Sub Worksheet_Activate()
With Application
        .Calculation = xlManual
        .MaxChange = 0.001
        .CalculateBeforeSave = False
    End With
End Sub


Private Sub Worksheet_Deactivate()
With Application
        .Calculation = xlAutomatic
        .MaxChange = 0.001
    End With
End Sub


Private Sub Workbook_Open()
Application.Calculation = xlCalculationManual
End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Calculation = xlCalculationAutomatic
End Sub

Bild

Betrifft: AW: Einzelnes Blatt nicht neu berechnen
von: Tobias Marx
Geschrieben am: 08.04.2005 09:42:08
Servus!
Hm... ich wuerd das berechnen generell abschalten, und in Tabelle 1 folgenden Code einfuegen:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  Worksheets("Tabelle1").Calculate
End Sub

So wird bei jeder Aenderung in der ersten Tabelle neu berechnet, Tabelle2 muesste dann eigentlich nicht neu berechnet werden. Ich konnte es hier aber nicht wirklich testen.
Konnte ich helfen?
Gruss

Tobias
Bild

Betrifft: AW: Einzelnes Blatt nicht neu berechnen
von: Bourtscheidt
Geschrieben am: 08.04.2005 10:15:18
Hallo Tobias,
danke für den Tip.
zuerst hatte ich den Eindruck, daß es hilft, als ich mit Standardverknüpfungen und
Grundrechenarten getestet habe. Bei Funktionen klappt es nicht.
Vielleicht sind es ja spezielle Funktionen, die die VBA-Vorgaben unterlaufen.
Ich habe das jetzt mal mit sverweis getestet. Diese Funktion holt sich automatisch
in Tabelle2 die neuen Werte aus der Tabelle1, obwohl das Neuberechnen für Tabelle2 ausgeschaltet ist.
Kennst Du dich soweit aus, ob bestimmte Funktionen das Abschalten der Berechnung ignorieren?
Gruß
Volker
Bild

Betrifft: AW: Einzelnes Blatt nicht neu berechnen
von: Tobias Marx
Geschrieben am: 08.04.2005 10:17:57
Servus Volker,
da muss ich leider passen, das war die einzige Moeglichkeit, die ich kannte... ich setz die Frage auf offen.

Gruss

Tobias
Bild

Betrifft: AW: Einzelnes Blatt nicht neu berechnen
von: Martin Beck
Geschrieben am: 08.04.2005 17:54:13
Hallo Volker,
wurde zuletzt hier diskutiert:
https://www.herber.de/forum/archiv/588to592/t590471.htm
Gruß
Martin Beck
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Einzelnes Blatt nicht neu berechnen"