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

LET & Array mit Zellenbezug

Forumthread: LET & Array mit Zellenbezug

LET & Array mit Zellenbezug
31.10.2024 04:48:18
Thomas
Hallo,

ich versuche gerade eine Formel mit Zellbezug in ein Array einzufügen.
Jedoch bekomme ich eine Fehlermeldung. Hat einer von euch eine Lösung?

Ausgangspunkt: In Zelle A2 steht ein numerischer Wert. Der Ausdruck ={"HDR_1"."HDR_2"."HDR_3";1.2.3} generiert mir nun eine 2 x 3 Matrix.
Frage: Wie kann ich einen Wert in dem Array durch die Variable ersetzen, um das Ganze etwas dynamischer zu gestalten?

Dieser Versuch läuft auf einen Fehler.
=LET(

Test;A2+1;
{"HDR_1"."HDR_2"."HDR_3";1.2.Test})


MfG
Thomas
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
=LET(test;A1;HSTAPELN({1.2.3};test))
31.10.2024 10:38:06
Yal
VG
Yal

AW: nachgefragt ...
31.10.2024 13:08:57
neopa C
Hallo Yal,

...mangels XL365 für mich nicht nachvollziehbar, weil ich es so nicht testen kann. Aber interessehalber trotzdem nachgefragt, gilt Dein Vorschlag wirklich (auch) für: {"HDR_1"."HDR_2"."HDR_3";1.2.3}?

In den älteren XL-Versionen geht das gewünschte mE nur unter zu Hilfenahme von VBA oder indem in einer 6 zelligen Tabellenbereich "HDR_1"."HDR_2"."HDR_3";1.2.Test eingetragen wird und im Namensmanager TEST=A2+1 definiert wird.

Gruß Werner
.. , - ...
Anzeige
AW: nachgefragt ...
31.10.2024 14:37:56
Yal
Hallo Werner,

HStapeln, also horizontales Stapeln bringt 2 Arrays zusammen
= HSTAPELN({1.2.3};{4.5.6})
ergibt einen Array {1.2.3.4.5.6}

Es erlaubt ebenfalls einen Parameter zu konvertieren, bevor es an das Array zugefügt wird.
= HSTAPELN({1.2.3};A1)
wenn A1 = "X", hat man einen einzeiligen Array {1.2.3."X"}
Der Umweg über den LET wäre nicht notwendig.

Vstapeln, vertikales stapeln, macht aus 2 oder mehrere Array eine zweite Dimension:
=VSTAPELN({1.2.3};{4.5.6})
oder
=VSTAPELN({1.2.3;4.5.6})
hat 2 Zeilen und 3 Spalten.

Im Fall von Thomas müsste es so ausehen:
=LET( Test;A2+1; VSTAPELN( {"HDR_1"."HDR_2"."HDR_3"}; HSTAPELN({1.2}; Test))
oder
= VSTAPELN( {"HDR_1"."HDR_2"."HDR_3"}; HSTAPELN({1.2}; A2+1)

VG
Yal
Anzeige
AW: danke Yal, so macht es (für mich) Sinn owT
31.10.2024 15:15:22
neopa C
Gruß Werner
.. , - ...
AW: nachgefragt ...
31.10.2024 17:19:54
Thomas
Hallo Yal,

vielen Dank für die Super-Antwort.
Ein Hoch auf die Array-Funktionen.
Mit VSTAPELN und HSTAPELN ist die ganze Sache noch viel dynamischer.
 =VSTAPELN( {"HDR_1"."HDR_2"."HDR_3"."HDR_4"."HDR_5"}; HSTAPELN({1.2}; A2; A2+1); HSTAPELN(A2 *0,5))


MfG

Thomas
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige