Automatische Berechnung in einem Tabellenblatt deaktivieren
#1
Hallo zusammen,

ich habe eine Datei mit mehreren Tabellenblättern, die sich auf Basis von zwei Tabellenblättern mit Rohdaten aktualisieren.

Für ein Tabellenblatt möchte ich allerdings eine Ausnahme schaffen: dort möchte ich meine Ergebnisse nur per Knopfdruck aktualiseren. Dazu habe ich einen Button eingefügt, der ein Macro aktiviert. Dieses stellt die automatische Berechnung ein und wieder aus. Das heißt ich habe diese standardmäßig ausgeschaltet. Ich musste nun feststellen, dass sich diese Einstellung global auf das gesamte Dokument auswirkt und alle meine Berechnungen "blockiert".

Was kann ich tun, damit alle Tabellenblätter sich automatisch aktualisieren und die Berechnungen nur in diesem einem Tabellenblatt per Knopfdruck erfolgen?


Danke für die Hilfe
Antworten Top
#2
Hallo

das könnte über die Events Aktivierung/ Deaktivierung der Arbeitsblätter geschehen.


- Rechtsclick auf den Tabellenblattreiter, von dem Blatt, was manuell sein soll
- Code anzeigen
- Das hier reinkopieren

Code:
Private Sub Worksheet_Activate()
    Application.Calculation = xlManual
   
End Sub

Private Sub Worksheet_Deactivate()
    Application.Calculation = xlAutomatic

End Sub

LG UweD
[-] Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:
  • canislupusminor
Antworten Top
#3
Nachtrag zu meiner Antwort in:
Wenn kein Treffer, dann weiterprüfen, anstatt leerer Zeile (clever-excel-forum.de)

Ich habe jetzt noch den Hinweis gefunden.
Zitat:Tabellenblätter haben eine Eigenschaft EnableCalculation. Zuweilen hilft es, diese auf False zu setzen. Allerdins ist die flüchtig, d.h. sie wird nicht gespeichert und müsste beim Öffnen der Datei neu gesetzt werden.

Gruß Elex

PS: @UweD, hast du das getestet.
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • canislupusminor
Antworten Top
#4
(07.06.2022, 13:55)Elex schrieb: PS: @UweD, hast du das getestet.

Ich hab es so verstanden, das während auf dem Blatt gearbeitet wird, keine Berechnungen automatisch durchgeführt werden
Arbeitet er auf anderen Blättern, soll die automatische Berechnung erfolgen.

 

Wenn das EINE Blatt verlassen wird, werden natürlich auch diese Formeln aktualisiert.

Kommt halt darauf an, was genau der Fragesteller möchte.


LG
[-] Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:
  • canislupusminor
Antworten Top
#5
(07.06.2022, 14:48)UweD schrieb: Kommt halt darauf an, was genau der Fragesteller möchte.

Ich möchte, dass sich ein Tabellenblatt nur dann aktualisiert, wenn ich einen bereits eingefügten Button (Bezeichnung "Load Data") auf diesem Tabellenblatt anklicke. 
Antworten Top
#6
Dann wie Elex es angeregt hat so...

in den Codebereich von "DieseArbeitsmappe"

Code:
Private Sub Workbook_Open()
    Sheets("Tabelle2").EnableCalculation = False
End Sub

LG UweD
[-] Folgende(r) 1 Nutzer sagt Danke an UweD für diesen Beitrag:
  • canislupusminor
Antworten Top
#7
Hallo,

bevor ich solche Klimmzüge machen würde, würde ich alle Berechnungen über ein Makro laufen lassen und keine Formeln in das Blatt  stellen. Dann bin ich sicher, dass nichts ungewollt berechnet wird!
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste