Office - Word, Excel und Co. 9.706 Themen, 40.868 Beiträge

Excel: Neuberechnung Tabellenblatt

jdeen / 7 Antworten / Flachansicht Nickles

Hallo zusammen.

Ich habe eine Excel-Datei mit einer Haupttabelle und
mehreren Untertabellen (Auto, Miete, Kleidung etc.)

Um die aktuellen Daten aus der Haupttabelle
(Spalte D : Auto, Miete, Kleidung etc, Spalte D die entsprechenden Werte)
in die jeweiligen Untertabellen zu übertragen verwende ich in :

Zelle C3 "=Teil(Zelle("Dateiname");Suchen("]";Zelle("Dateiname"))+1;31)" - Tabellenname -

Zelle D3 "=Sverweis(C3;Tabelle!D10:E20;2;0) - Werte -

Das funktioniert einwandfrei.

Nur : In "Dateiname" steht immer der Name der zuletzt geänderten (und somit berechneten Tabelle).

Ich möchte nun eine Neuberechnung beim Betreten der jeweiligen Untertabelle auslösen.

Wer hat da Erfahrung?

. . . when the kid next door walking on the moon . . .Wirklich gute Jdeen passen auf einen Bierdeckel
bei Antwort benachrichtigen
Ja, das geht auch. peterson
mumpel1 jdeen „OK. Auto_open ist bekannt. Wird beim Öffnen der Mappe ausgeführt....“
Optionen

Hallo!

Private Sub Workbook_Open()
Sheets(1).OnEntry = "DieseArbeitsmappe.NeuBerechnen"
Sheets(2).OnEntry = "DieseArbeitsmappe.NeuBerechnen"
Sheets(3).OnEntry = "DieseArbeitsmappe.NeuBerechnen"
Sheets(4).OnEntry = "DieseArbeitsmappe.NeuBerechnen"
End Sub


Es geht auch einfacher. Ohne Workbook_Open oder Worksheet_Activate. Das folgende Makro in "DieseArbeitsmappe". Dieses Makro hat den Vorteil, dass man es nur einmal schreiben muss und es trotzdem in allen Tabellen nutzen kann.

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Calculate
End Sub

Es würde auch mit Hilfe einer Klassenprogrammierung gehen, dann könnte man das Makro auch in allen Arbeitsmappen global nutzen.

Gruß, René

bei Antwort benachrichtigen