Clever-Excel-Forum

Normale Version: Verrückte Formel ändert sich selbst
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Grüße liebe Community,

ich werde noch verrückt...

Ich habe diese Formel hier:

=WENNFEHLER(INDEX(Eingabemaske!P12:P3000;VERGLEICH(B2&D2&C2&G2;Eingabemaske!B12:B3000&Eingabemaske!C12:C3000&Eingabemaske!F12:F3000&Eingabemaske!E12:E3000;0));"")

Ich suche aus der Eingabemaske bestimmte Daten und lasse mir dann die dazugehörige Summe in P anzeigen.
Das Problem ist, wenn ich bei der Eingabemaske eine neue Zeile hinzufüge, sieht die Formel plötzlich so aus:

=WENNFEHLER(INDEX(Eingabemaske!P13:P3001;VERGLEICH(B2&D2&C2&G2;Eingabemaske!B13:B3001&Eingabemaske!C13:C3001&Eingabemaske!F13:F3001&Eingabemaske!E13:E3001;0));"")

Auch wenn ich die einzelnen Zelle absolut setzte mit F4, passiert dieser "Fehler" wie bekomme ich es hin, damit sich die Werte nicht verändern, egal ob ich einen Datensatz hinzufüge oder lösche?

Gruß

Mounzer

UND VIELEN VIELEN DANK!
Hallo,

ungetestet.

Code:
=WENNFEHLER(INDEX(Eingabemaske!P$12:P$3000;VERGLEICH(B2&D2&C2&G2;Eingabemaske!B$12:B$3000&Eingabemaske!C$12:C$3000&Eingabemaske!F$12:F$3000&Eingabemaske!E$12:$E3000;0));"")
Hallo,

versuch mal deine riesige Formel mit  "=INDIREKT(.......)" zu ergänzen. Das sollte verhindern, dass sich die Formel ändert wenn sich die Bezugszellen ändern (z.B. durch hinzufügen neuer Zellen)

Viele Grüße
fullevent
(18.05.2016, 14:19)Steffl schrieb: [ -> ]Hallo,

ungetestet.

Code:
=WENNFEHLER(INDEX(Eingabemaske!P$12:P$3000;VERGLEICH(B2&D2&C2&G2;Eingabemaske!B$12:B$3000&Eingabemaske!C$12:C$3000&Eingabemaske!F$12:F$3000&Eingabemaske!E$12:$E3000;0));"")


Hallo Steffl,

wenn ich das nicht falsch verstanden habe, dann verhindert das $-Zeichen die Veränderung der Zeile (und/oder eben Spalte) beim verschieben der Formel, nicht beim verschieben der Zellen auf die sich die Formel bezieht.
Aber ich habe meinen Lösungsvorschlag auch nicht getestet ^^

Viele Grüße
fullevent
Also du meinst so Full?


"=INDIREKT(INDEX(Eingabemaske!P$12:P$3000;VERGLEICH(B2&D2&C2&G2;Eingabemaske!B$12:B$3000&Eingabemaske!C$12:C$3000&Eingabemaske!F$12:F$3000&Eingabemaske!E$12:$E3000;0));"")
(18.05.2016, 14:01)Mounzer schrieb: [ -> ]Das Problem ist, wenn ich bei der Eingabemaske eine neue Zeile hinzufüge, sieht die Formel plötzlich so aus:
Du meinst du fügst eine Zeile oberhalb der Zeile 12 ein?
Falls ja, dann ist das Verhalten von Excel korrekt.

Einfache Lösung: Füge neue Daten unter den bisherigen Daten an. Und wenn du dann noch eine formatierte Tabelle verwendest dann brauchst du noch nicht mal den Bereich bis Zeile 3000 festzusetzen sondern kannst mit den strukturierten Verweisen arbeiten.

Nicht so einfache Lösung: Schreibe die Bezüge in INDIREKT().
(18.05.2016, 14:41)Hydronaut schrieb: [ -> ]
(18.05.2016, 14:01)Mounzer schrieb: [ -> ]Das Problem ist, wenn ich bei der Eingabemaske eine neue Zeile hinzufüge, sieht die Formel plötzlich so aus:
Du meinst du fügst eine Zeile oberhalb der Zeile 12 ein?
Falls ja, dann ist das Verhalten von Excel korrekt.

Einfache Lösung: Füge neue Daten unter den bisherigen Daten an. Und wenn du dann noch eine formatierte Tabelle verwendest dann brauchst du noch nicht mal den Bereich bis Zeile 3000 festzusetzen sondern kannst mit den strukturierten Verweisen arbeiten.

Nicht so einfache Lösung: Schreibe die Bezüge in INDIREKT().

Grundsätzlich wird ein neuer Datensatz immer bei Zeile 12 eingepflegt, die restlichen Daten verschieben sich nur nach unten. Also ich kopiere durch ein Makro die letzte untere Zeile 13, lösche den Inhalt der Zeile und somit ist die Eingabe von neuen Daten in der Zeile 12 möglich. Ich frage mich nur, wie das mit der INDIREKT() Lösung geht.
(18.05.2016, 14:47)Mounzer schrieb: [ -> ]Ich frage mich nur, wie das mit der INDIREKT() Lösung geht.
Schon mal einen Blick in die Hilfe geworfen?
Code:
INDIREKT("A1:A100")
Hallo Mounzer,

hast Du nun Steffls Antwort (#2) getestet?
Und wenn Du per VBA eine Zeile einfügst, könntest Du ja auch gleich da die Formel mit reinschreiben.

Gruß Uwe
Hallo Kuwer,

ja, ich hatte die Idee auch bereits vor meinem Eintrag in das Forum getestet, leider ohne Erfolg.
Die Formel in mein Makro eintragen macht ja kein Sinn, weil ich eine Berechnung auf einem anderen Tabellenblatt durchführe.

Kannst du mir sagen, wie dass mit dem INDIREKT gehen soll?
Seiten: 1 2