Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zellbezug in Formel ändern

Zellbezug in Formel ändern
05.11.2013 20:25:45
Christian
Hallo alle zusammen,
habe folgende Formel, die soweit funktioniert, ich aber dauernd anpassen muss:
{=(ZEILE(A1)>=KKLEINSTE(WENN($H$1:$H$1000$H$2:$H$1001;ZEILE($H$2:$H$1000));30))*(ZEILE(A1) $H$2:$H$1001;ZEILE($H$2:$H$1000));30)+30) *ZÄHLENWENN($B$1:INDEX($B$1:$B$1000;KKLEINSTE(WENN($H$1:$H$1000$H$2:$H$1001;ZEILE($H$2:$H$1000)); 30)-1);B1) } Ich suche irgendwie einen Mittelweg zwischen der Tatsache, dass ich wenn ich die Formel auf die komplette Spalte H beziehe, die Matrixformel sehr lange zum berechnen braucht und der Tatsache, dass wenn ich es beschränke, die Formel immer angepasst werden muss, wenn die Grenze erreicht ist.
Gibt es denn keine Möglichkeit, dass automatisch da wo jetzt H1000 steht die letzte beschriebene Zeile genommen wird (z.Zt. 638) und da wo jetzt H1001 steht, automatisch die erste leere Zeile? (z.Zt. 639) jedoch kommen alle 2 Wochen ne Menge Zeilen hinzu.
Danke für euren Rat
Christian

Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellbezug in Formel ändern
05.11.2013 20:41:03
Uduuh
Hallo,
ist der Bereich lückenlos gefüllt?
Dann vergib einen dynamischen Namen.
Name: DerBereich; Bezug: =index(h:h;1):index(h:h;anzahl2(h:h))
Anstatt $H$1:$H$1000 DerBereich einsetzen
Gruß aus’m Pott
Udo

AW: Zellbezug in Formel ändern
05.11.2013 21:11:51
Christian
Hallo Udo,
ja der Bereich A1:M638 ist lückenlos gefüllt.
Nur was ist mit den anderen Bezügen? manche fangen ja bei H2 an, manche gehen bis H1001, einer bezieht sich auf Spalte B.
Gruß
Christian

Anzeige
AW: Zellbezug in Formel ändern
06.11.2013 09:44:31
GuentherH
Hallo Christian,
es sollte sogar noch eifacher gehen.
wenn Du in Zeile 639 neue Zeilen einfügst, verschiebt sich der Bezug ..$1000 sowieso nach unten!
Also einfach die Tabelle durch Zeilen einfügen erweitern, bevor Du die neuen Daten schreibst.
Gruß,
Günther

AW: Zellbezug in Formel ändern
06.11.2013 10:25:02
Christian
Hallo Günther,
interessanter Rat, daran habe ich noch gar nicht gedacht.
Danke
Christian

Anzeige
ist möglich ... mich würde aber interessieren ...
06.11.2013 11:47:10
neopa
Hallo Christian,
... für was wird so eine Art Auswertung denn gebraucht? Mir fehlt da momentan die Fantasie. Würde mich aber interessieren.
Zu Deiner Frage: "Nur was ist mit den anderen Bezügen?" Das würde analog funktionieren wie Udo vorschlug. Allerdings auch wenn anstelle =index(h:h;1):index(h:h;anzahl2(h:h)) folgender Ansatz =H1:INDEX(H:H;ANZAHL2(H:H)) und =H2:INDEX(H:H;ANZAHL2(H:H)+1) und =B1:INDEX(B:B;ANZAHL2(H:H)) ausreichend wäre, würde bereits dadurch die Formel schon sehr lang. Nun muss aber auch noch ZEILE($H$2:$H$1000) - wobei hierfür jedoch kürzer ZEILE($2:$1000) stehen könnte - dynamisiert werden. Auch dies geht nach einem analogen Schema mittels INDEX(). Bloß dadurch wird die Formel fast unüberschaubar lang, wenn man sie nicht mittels Bereichsnamen strukturiert.
Ich bin momentan aber auch noch der Meinung, dass es bei den max. 1000 Formeln, die Reduzierung des zu untersuchenden Bereiches innerhalb der Formel um max. ein paar hundert Zellen nur unbedeutende Geschwindigkeitsvorteile erzielen lassen. Lasse mich aber gern vom Gegenteil überzeugen.
Aber Du hast ja zuvor noch die Möglichkeit den Vorschlag von zu Günther realisieren.
Nach meinen Vorstellung dürfte die meisten dieser nach unten kopierten Formeln als Ergebnis ein 0 ergeben. Oder? Ich hätte nun wirklich gern gewußt, wofür Du diese Auswertungsformel denn benötigst.
Wahrscheinlich willst Du die Ergebnisse dieser Formel weiter auswerten!?
Du siehst, ich platze fast vor Neugier.
Gruß Werner
.. , - ...

Anzeige
AW: ist möglich ... mich würde aber interessieren ...
06.11.2013 12:22:52
Christian
Hallo Werner,
du hast ja sooo recht, deshalb habe ich ja auch nochmal geschrieben, das das analog auch mit den anderen Formelteilen so funktioniert wie in Udos Beispiel war klar, nur ich konnte nicht nachvollziehen wie Udo da genau darauf kommt, speziell was ich aus seinem Vorschlag machen muss, damit er nicht die Zeile aus seinem Beispiel, sondern eine Zeile weiter nimmt.
Wozu das Ganze gebraucht wird. Die Formel soll folgendes erreichen, die Tabelle in 3 Teile teilen, die ersten 30 Texte in Spalte H, wobei Texte mehrfach vorkommen können, also es nicht gleichbedeutend mit den ersten 30 Zeilen ist, der zweite Teil die darauf folgenden 30 Zeilen und der 3. Teil den Rest.
Die Formel zählt in den Zeilen, die zum 2. Teil gehören, wie oft der Text in Spalte B, der in der jeweiligen Zeile steht in Spalte B im ersten Teil vorkommt und gibt wie du richtig gesehen hast, im ersten und 3. Teil 0 aus.
Wobei sich durch regelmäßiges hinzufügen von Zeilen und danach neu sortieren der Tabelle die Anzahl der Zeilen die zum ersten Teil gehören ständig ändert.
Du hast natürlich recht, bei 1000 Zeilen spielt das noch keine Rolle, aber im Monat kommen so ca. 60 Zeilen hinzu und das könnte ein Projekt bis an mein Arbeitsende, also noch 36 Jahre werden.

Anzeige
AW: ist möglich ... mich würde aber interessieren ...
06.11.2013 12:41:25
Christian
An Werner nochmal,
nach nochmaligem Lesen wurde mir klar, du wolltest wissen wozu ich die Formel brauche.
Die Tabelle ist eine Liste, was wann an Dokumenten geändert wurde.
Wenn das Dokument alle 30 Stationen durchlaufen hat, kann es archiviert werden. Also in dem Fall rutscht der Eintrag in den zweiten Teil der Tabelle.
Es sei denn, eine der Stationen hat es noch ein zweites mal in Bearbeitung genommen, demnach gibt es noch einen zweiten Eintrag in der Tabelle weiter oben. Die Formel sagt mir dann, doch noch nicht archivieren, ist noch in Bearbeitung.
Gruß
Christian

Anzeige
jetzt ist es mir etwas verständlicher ...
06.11.2013 15:07:28
neopa
Hallo Christian,
... vielen Dank, für Deine zusätzlichen Informationen. Es ist mir zwar noch vollumfänglich klar geworden, aber in etwa schemenhaft. Möglicherweise könnte es dafür eine einfachere Lösung geben. Aber Du hast ja erst einmal etwas funktionierendes.
Gruß Werner
.. , - ...

Anzeige
AW: jetzt ist es mir etwas verständlicher ...
06.11.2013 15:19:51
Christian
Hallo Werner,
wenn dir etwas anderes einfällt. Der Sinn der Sache ist eigentlich nur, dass irgendwie in irgendeiner Art und Weise gekennzeichnet wird, wenn ein Text in Spalte B des zweiten Bereiches auch in Spalte B des ersten Bereiches vorkommt. Wie oft er vorkommt, an welcher Stelle oder in welcher Art und Weise das deutlich gemacht wird, ist mir völlig egal.
Die Spalte H wird nur zum Zählen gebraucht, wo die Bereiche anfangen und enden.
Gruß
Christian

Anzeige
nochmal nachgefragt ...
06.11.2013 15:48:56
neopa
Hallo Christian,
... damit ich es richtig verstehe. Mal angenommen anstelle 30 Datensätzen es wären nur jeweils 4, dann interessieren Dich wie in untenstehenden Beispiel nur die markierten? Und nicht z.B. B10:B11 und B14:B15? Oder?
 BCDEFGH
1Text_1     1
2Text_2     1
3Text_3     1
4Text_4     1
5Text_5     2
6Text_3     2
7Text_7     2
8Text_1     2
9Text_9     3
10Text_3     3
11Text_4     3
12Text_12     3
13Text_13     1
14Text_1     1
15Text_2     1
16Text_16     1
17Text_17     2
18Text_16     2
19Text_19     2
20Text_20     2


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
@ Neopa
06.11.2013 14:24:30
Rudi
Hallo,
anstelle =index(h:h;1):index(h:h;anzahl2(h:h)) folgender Ansatz =H1:INDEX(H:H;ANZAHL2(H:H))
dann lösch mal Zeile1.
Gruß
Rudi

so gesehen ...
06.11.2013 14:59:17
neopa
Hallo Rudi,
... hast Du natürlich Recht. Aber löschen sollte man an sich immer nur den Durst ;-)
Um alle Eventualitäten immer abzufangen, also ...
Gruß Werner
.. , - ...

Anzeige
AW: so gesehen ...
06.11.2013 15:02:53
Christian
Hallo ihr beiden,
um eure Diskussion etwas abzukürzen, die Tabelle ist nicht darauf ausgelegt, Zeilen zu löschen.
Gruß
Christian
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zellbezug in Excel-Formeln ändern


Schritt-für-Schritt-Anleitung

Um einen Zellbezug in einer Excel-Formel zu ändern, kannst du folgende Schritte befolgen:

  1. Formel auswählen: Klicke auf die Zelle, die die Formel enthält, die du ändern möchtest.
  2. Bearbeitungsmodus aktivieren: Drücke F2, um den Bearbeitungsmodus zu aktivieren.
  3. Zellbezug ändern: Suche den Zellbezug, den du anpassen möchtest (z. B. $H$1000). Ersetze ihn durch einen dynamischen Bezug, wie z. B. INDEX(H:H;ANZAHL2(H:H)), um die letzte beschriebene Zeile automatisch zu ermitteln.
  4. Formel bestätigen: Drücke Enter, um die Änderungen zu speichern und die Formel zu berechnen.

Diese Methode hilft dir, die Excel-Formel dynamisch zu gestalten, sodass du den Bezug nicht mehr manuell anpassen musst.


Häufige Fehler und Lösungen

  • Problem: Die Formel funktioniert nicht, nachdem ich den Bezug geändert habe.

    • Lösung: Überprüfe, ob alle Zellbezüge korrekt sind und keine falschen Bereiche verwendet werden. Achte darauf, dass die Formel die richtigen Funktionen wie INDEX() oder ANZAHL2() verwendet.
  • Problem: Die Berechnung dauert zu lange.

    • Lösung: Verwende dynamische Namen für Bereiche, um die Berechnung zu optimieren. Zum Beispiel: =INDEX(H:H;1):INDEX(H:H;ANZAHL2(H:H)) statt angestrebter statischer Bezüge.

Alternative Methoden

Eine alternative Methode zur Anpassung von Zellbezügen ist die Verwendung von dynamischen Bereichsnamen:

  1. Gehe zu Formeln > Namens-Manager.
  2. Klicke auf Neu und gib einen Namen wie DerBereich ein.
  3. Setze den Bezug auf =INDEX(H:H;1):INDEX(H:H;ANZAHL2(H:H)).
  4. Nutze in deiner Formel dann DerBereich anstelle der festen Zellbezüge.

Diese Methode vereinfacht die Handhabung von Zellbezügen und macht deine Formeln flexibler.


Praktische Beispiele

  1. Beispiel für die Verwendung von INDEX:

    =ZÄHLENWENN(B:B;INDEX(H:H;ANZAHL2(H:H)))

    Diese Formel zählt, wie oft der letzte Eintrag in Spalte H in Spalte B vorkommt.

  2. Dynamisches Referenzieren: Angenommen, du hast Daten in Spalte H und möchtest die letzten 30 Einträge analysieren:

    =INDEX(H:H;ANZAHL2(H:H)-29):INDEX(H:H;ANZAHL2(H:H))

    Diese Formel gibt dir die letzten 30 Einträge in Spalte H zurück.


Tipps für Profis

  • Nutze benannte Bereiche, um die Übersichtlichkeit deiner Formeln zu verbessern.
  • Überlege, ob du Array-Formeln verwenden möchtest, um mehrere Berechnungen in einer Formel zu kombinieren.
  • Halte deine Formeln so kurz und präzise wie möglich, um die Lesbarkeit zu erhöhen und Fehler zu vermeiden.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass meine Formeln immer die aktuelle Datenmenge berücksichtigen?
Verwende dynamische Bereiche oder die Funktion ANZAHL2(), um immer den aktuellen Datenbereich zu referenzieren.

2. Was mache ich, wenn die Formel immer noch nicht funktioniert?
Überprüfe alle Zellbezüge und stelle sicher, dass sie korrekt sind. Manchmal kann es hilfreich sein, die Formel Schritt für Schritt zu testen, um den Fehler zu finden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige