Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1636to1640
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Indirekt nicht jedesmal berechnen

Indirekt nicht jedesmal berechnen
08.08.2018 17:27:42
Christian
Hallo Zusammen,
ich habe eine Datei mit x Tabellenblättern. Eines davon, Tabellenblatt B ist voll mit Formeln, die den Befehl "Indirekt" verwenden. Das hat sich leider so entwickelt. Nun habe ich verstanden, dass ein Nachteil dieses Befehls ist, dass er bei jeder Eingabe neu berechnet wird.
Da die Formeln in Tabellenblatt B nur berechnet werden müssen, wenn ich mich auch in Tabellenblatt B befinde, dachte ich, ich deaktiviere die Recheneigenschaft von B über Calculation.Enable = False sobald ich ein anderes Tabellenblatt verwende und umgekehrt.
Leider hat das so gar keinen Effekt. Hat jemand eine gute Idee? Eine Beispieldatei ist wegen der sensiblen Datenlage leider nicht möglich.
Herzlichen Dank und viele Grüße
Christian

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Indirekt nicht jedesmal berechnen
08.08.2018 17:39:55
Hajo_Zi
Hallo Christian,
einzelnes Blatt aus der Berechnung ausnehmen
Sheets("Tabelle1").EnableCalculation = False

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Indirekt nicht jedesmal berechnen
09.08.2018 07:28:30
Christian
Hallo Hajo,
vielen Dank.
Die Idee hatte ich auch schon und habe sie versucht in jedem anderen Tabellenblatt über worksheet_activate unterzubringen. Leider ändert das gar nichts. Oder ist das die falsche Stelle?
Vielen Dank und viele Grüße
Christian
AW: Indirekt nicht jedesmal berechnen
09.08.2018 13:53:48
Hajo_Zi
Du hast es bei Aktivate und Deactivate der entsprechenden Tabelle mit der entsprechenden Eigenschaft geschrieben?
nur wenige schauen auf Deinen Rechner und sehen die Datei.
Ich möchte gerne den Fehler im Original sehen.
Ich baue keine Datei nach. Die Zeit hat schon jemand investiert.
Ein Nachbau sieht meist anders aus als das Original. Darum sollte das Original verlinkt werden.
Wenn du an Stelle einer Demomappe deine Originalmappe hochladen willst, diese aber sensible Daten enthält, kannst du diese Daten anonymisieren bzw. pseudonymisieren.
Benutze hier im Forum die Funktion zum hochladen. Falls Du die nicht benutzen möchtest beachte, von unsicheren Servern wie z.B. www.file-upload.net lade ich keine Datei runter. (lt. Einschätzung meines Virenprogramms)
Gruß Hajo
Anzeige
AW: Indirekt nicht jedesmal berechnen
08.08.2018 17:47:47
daniel
Hi
warum verwendest du Indirekt bzw, welcher Teil des Zellbezugs muss berechnet werden?
werden die Zellbezüge (Zeilen, Spalten) berechnet und das Tabellenblatt des Bezuges ist konstant, kannst du Indirekt durch das nichtvolatile (zumindest in neueren Excelversionen, soviel zum Thema "Version - ohne Relevanz) Index ersetzen.
ist jedoch der Tabellenblattname Teil der Berechnung, dann musst du bei Indirekt bleiben.
Gruß Daniel
AW: Indirekt nicht jedesmal berechnen
09.08.2018 07:26:22
Christian
Hallo Daniel,
im Tabellenblatt wird über ein Dropdown-Menü die Art der Berechnung angestoßen. Die Zellen mit INDIREKT weisen den sonstigen Formeln dann den Bezug der Rohdaten zu, die dann mit Summewenns oder ähnlichem verwendet wird. Also steht da manchmal A!$S$10:A$S$10000 und mal A!$D$15:A!$D$24, aber immer ist es A! das die Rohdaten enthält.
Kann man da etwas mit Index erreichen?
Vielen Dank und viele Grüße
Christian
Anzeige
Ja, das ist gerade der Fall, wo es mit INDEX geht
09.08.2018 08:23:56
lupo1
A!$S$10:A!S$10000
A!$D$15:A!$D$24 lauten richtig
A!$S$10:S$10000
A!$D$15:$D$24. Daraus wird mit INDEX
=INDEX(A!$S:$S;10):INDEX(A!$S:$S;10000)
=INDEX(A!$D:$D;15):INDEX(A!$D:$D;24)
(mit dann noch durch Zellbezug zu ersetzender Konstante wie etwa 10000 für die Zeilenlage)
Kommt die Spaltenlage hinzu, dann entsprechend
=INDEX(A!$A:$IU;10;19):INDEX(A!$A:$IU;10000;19)
=INDEX(A!$A:$IU;15;4):INDEX(A!$A:$IU;24;4)
AW: Ja, das ist gerade der Fall, wo es mit INDEX geht
09.08.2018 08:34:21
Christian
Hallo Lupo,
super - vielen Dank für die Rückmeldung! Das macht auf jeden Fall klüger!
Die Angabe A!$S$10:$S$10000 steht zum Beispiel in Zelle C10. Auf C10 geht dann mein INDIREKT. Ist es also mit Index($C$10) ersetzbar?
Viele Grüße
Christian
Anzeige
Nein! Und schenke uns mehr Info, als so etwas ...
09.08.2018 08:35:26
lupo1
Aufdröselung
09.08.2018 08:59:31
lupo1
Wenn Du - unbegründeterweise - einen starren Bezug A!$S$10:$S$10000 in C10 packst (über Dropdown ausgewählt), könntest Du wie folgt vorgehen (3 Hilfszellen):
D10: =--TEIL(WECHSELN(WECHSELN(C10;":";);"$";WIEDERHOLEN(" ";29));59;29)
E10: =--TEIL(WECHSELN(WECHSELN(C10;":";);"$";WIEDERHOLEN(" ";29));117;29)
F10: =CODE(GLÄTTEN(TEIL(WECHSELN(WECHSELN(C10;":";);"$";WIEDERHOLEN(" ";29));88;29)))-64
und dann
=DeineFunktionWieZBSumme(INDEX(A!$A:$IU;D10;F10):INDEX(A!$A:$IU;E10;F10))
Genauso kannst Du auf die Hilfszellen verzichten und die INDEX:INDEX-Formel länger machen.
AW: Aufdröselung
09.08.2018 09:34:21
Christian
Probiere ich aus.. Dankeschön!!!
Anzeige
INDEX:INDEX
09.08.2018 08:43:48
lupo1
... gibt es m.E. nur nicht in Pocket Excel oder Excel Mobile (die z.B. auch kein SUMMENPRODUKT kennen).
Die Voll-Excels (hier inkl. Excel Online) kennen es hingegen schon seit ewig. Oder weißt Du von einer Version, die das noch nicht konnte, z.B. vielleicht Excel 4 (aus 1993)?

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige