Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bereich.Verschieben durch Index ersetzen

Forumthread: Bereich.Verschieben durch Index ersetzen

Bereich.Verschieben durch Index ersetzen
28.10.2016 14:18:59
Dieter
Hallo zusammen,
da sich meine vielen dynamischen Bereiche auf die Performance von Excel niederschlagen, würde ich diese gerne durch die Index-Funktion ersetzen.
Leider klappt das nicht so recht.
Ich habe folgende Bereichsnamen, die sich alle auf den gleichen Bereich beziehen:
Bereichsname Bezug
Daten =Tabelle1!$A$2:$D$74
Daten1 =BEREICH.VERSCHIEBEN(Tabelle1!$A$2;;;ANZAHL2(Tabelle1!$A:$A);4)
Daten2 =Tabelle1!$A$2:INDEX(Tabelle1!$A:$A;ANZAHL2(Tabelle1!$A:$A)-1;4)
Wenn ich nun versuche, per Index-Funktion auf einen Wert des Bereichs zuzugreifen, dann klappt das für Daten2 nicht.
Indexfunktion					Ergebnis
=INDEX(Daten;3;2)					Dienstag
=INDEX(Daten1;3;2)					Dienstag
=INDEX(Daten2;3;2)					#BEZUG!	

Das gleich gilt für Pivot-Tabellen. Gibt es dafür einen Grund?
Bei der Pivot-Tabelle mit der Quelle Daten2 bekomme ich als Fehler
"Die Datenquelle, mit der Sie eine Verbindung herstellen möchten, wird von einer Organisation verwaltet.Wenn Sie darauf verweisen möchten, speichern Sie Ihre Arbeitsmappe an einem Speicherort, der ebenfalls verwaltet wird."
Ich habe überhaupt keine Verbindung eingerichtet.
Ich versteh nur noch Bahnhof.
Ich lade meine Test-Datei mal mit hoch.
https://www.herber.de/bbs/user/109077.xlsm
Vielleicht kann mir hier jemand helfen.
Viele Grüße,
Dieter
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bereich.Verschieben durch Index ersetzen
28.10.2016 14:42:56
Rudi
Hallo,
natürlich klappt das nicht. Tabelle1!A:A hat nun mal keine 4 Spalten.
Daten2 =Tabelle1!$A$2:INDEX(Tabelle1!$D:$D;ANZAHL2(Tabelle1!$A:$A))
Gruß
Rudi
AW: Bereich.Verschieben durch Index ersetzen
28.10.2016 21:02:31
Dieter
Hallo Rudi,
vielen Dank, das war der Fehler.
Ich schaue seit Tagen auf die Formel und sehe das Offensichtliche nicht.
Viele Grüße
Dieter
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Bereich.Verschieben durch Index ersetzen in Excel


Schritt-für-Schritt-Anleitung

  1. Öffne Deine Excel-Datei mit den dynamischen Bereichen, die Du durch die INDEX-Funktion ersetzen möchtest.
  2. Identifiziere die Bereiche, die Du anpassen möchtest:
    • Beispiel: Daten1 verwendet die BEREICH.VERSCHIEBEN-Funktion.
  3. Ändere die Formel für den Bereich Daten2 entsprechend. Setze die INDEX-Funktion so ein:
    =Tabelle1!$A$2:INDEX(Tabelle1!$D:$D;ANZAHL2(Tabelle1!$A:$A))
  4. Teste die INDEX-Funktion mit dem neuen Bereich:
    =INDEX(Daten2;3;2)
  5. Überprüfe die Ergebnisse. Achte darauf, dass die Anzahl der Spalten korrekt ist.

Häufige Fehler und Lösungen

  • Fehler: #BEZUG!

    • Ursache: Falscher Bezug in der INDEX-Formel. Der Bereich muss die richtige Anzahl an Spalten haben.
    • Lösung: Stelle sicher, dass die Referenz in der INDEX-Formel die tatsächliche Struktur der Daten widerspiegelt.
  • Fehler bei Pivot-Tabellen:

    • Ursache: Die Datenquelle ist nicht korrekt verbunden oder wird von einer Organisation verwaltet.
    • Lösung: Überprüfe die Datenquelle und speichere die Datei an einem geeigneten Speicherort.

Alternative Methoden

Eine Alternative zur Verwendung der INDEX-Funktion ist die Nutzung der FILTER-Funktion (verfügbar in Excel 365). Diese ermöglicht eine dynamische Bereichsauswahl:

=FILTER(Tabelle1!A2:D74; Tabelle1!A2:A74<>"")

Diese Methode kann die Performance verbessern und ist besonders nützlich bei großen Datenmengen.


Praktische Beispiele

Nehmen wir an, Du hast folgende Daten in Tabelle1:

A B C D
Datum Produkt Menge Preis
01.01.20 Apfel 10 0,5
02.01.20 Banane 15 0,3
03.01.20 Orange 20 0,4

Um den Preis der dritten Zeile zu erhalten, kannst Du folgende INDEX-Funktion verwenden:

=INDEX(Daten2;3;4)

Stelle sicher, dass Daten2 korrekt definiert ist, um den Bezug auf die vierte Spalte zu ermöglichen.


Tipps für Profis

  • Vermeide die Verwendung von BEREICH.VERSCHIEBEN, wenn es um große Datenmengen geht, da dies die Performance beeinträchtigen kann.
  • Nutze den Namen-Manager in Excel, um Deine Bereiche klar zu definieren und zu verwalten. So behältst Du den Überblick.
  • Experimentiere mit dynamischen Arrays und neuen Funktionen wie FILTER, um Deine Datenanalyse zu optimieren.

FAQ: Häufige Fragen

1. Warum funktioniert meine INDEX-Funktion nicht?
Das kann an einem falschen Bezug oder an einer nicht übereinstimmenden Spaltenanzahl liegen. Überprüfe Deine Formeln und Stellen sicher, dass die Bereiche korrekt definiert sind.

2. Was kann ich tun, um die Performance zu verbessern?
Vermeide die Verwendung von BEREICH.VERSCHIEBEN und nutze stattdessen die INDEX-Funktion oder neue Funktionen wie FILTER. Diese sind oft schneller und effizienter in der Verarbeitung großer Datenmengen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige