Registriert seit: 12.04.2014
Version(en): Office 365
Im Video gibt es noch den Hinweis auf
http://aka.ms/calcintel.
Wir sehen uns!
... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Registriert seit: 12.04.2014
Version(en): Office 365
13.10.2021, 19:54
(Dieser Beitrag wurde zuletzt bearbeitet: 13.10.2021, 19:56 von shift-del.)
Neues zum Lambda-Editor.
https://techcommunity.microsoft.com/t5/e...ue#M117696Zitat:Andy Gordon and Jack Williams from Microsoft Research revealed that the LAMBDA editor add-in they've been working on should be available via the Microsoft Store sometime in the near future. Video should be available here, under the "ACCESS" section, first session, around hour 10 of the Teams recording. What they demo'ed today has syncing with GitHub, which would be helpful in managing LAMBDA versioning, but overall it looks like there are some nice improvements!
Der Talk beginnt bei ca. 10:03 und der Editor wird ab ca. 10:15 gezeigt.
Wir sehen uns!
... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Registriert seit: 12.04.2014
Version(en): Office 365
Wir sehen uns!
... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
18.02.2022, 09:18
(Dieser Beitrag wurde zuletzt bearbeitet: 18.02.2022, 09:24 von LCohen.)
Eine Frage an die, die sich bereits mit LAMBDA beschäftigen:
Angenommen, ich definiere mit dem Excel-Namensmanager eine benannte Lambda-Fkt. wie
ARRAY.COMBINE(a;b), die mir die 2 Arrays a und b untereinanderhängt.
So weit, so gut.
Frage: Muss ich die immer extra im Blatt mitdefinieren, wenn ich eine sie aufrufende Lambda-Fkt. verwende?
Oder kann ich sie auch in letzterer erneut definieren (also unerkannt "wrappen", nur "zum mehrfachen internen Gebrauch" durch die äußere Funktion, mit wechselnden Argumenten).
ARRAY.COMBINE (hier einfach abgekürzt auf AR.C) benannt mit
=LAMBDA(a;b;LET(
x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b);
k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y);
WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n)))) funktioniert als allgemeines Tool.
Ich will nun etwa so etwas haben:
=LAMBDA(irgendwas;LET(
blabla;blabla;
AR.C;LAMBDA(a;b;LET(
x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b);
k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y);
WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
AR.C({11.12};AR.C(({1.2;3.4};{5.6;7.8;9.10}))
))
Die Benennung des allgemeinen LAMBDAs AR.C (für mehrfachen Gebrauch) soll also innerhalb eines Spezial-LAMBDAs stattfinden.
Das Problem ist sicherlich, dass a und b nicht einfach so virtuell als Platzhalter dienen können, da sie bekannt gemacht sein müssen. Sie müssen "außen" definiert sein (im "blabla"), so dass AR.C nicht mehrfach und verschieden verwendbar wäre.
Ergebnis soll sein:
11 12
01 02
03 04
05 06
07 08
09 10
Falls es doch geht, wie wäre dann die Syntax? Vielen Dank!
Registriert seit: 08.05.2014
Version(en): Office 2010, Office 365, Office 365 Betakanal
18.02.2022, 10:56
(Dieser Beitrag wurde zuletzt bearbeitet: 18.02.2022, 11:09 von maninweb.)
Hallo,
wenn ich Dich richtig verstehe: ja, Du kannst LAMBDAs "intern" als Hilfsfunktionen definieren und verwenden. An Deinem Beispiel sähe das so aus:
Code:
=LAMBDA(Irgendwas;LET(
fnCombine;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b);k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y);WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
vnResult;fnCombine({11.12};fnCombine({1.2;3.4};{5.6;7.8;9.10}));
vnResult))(1)
fnCombine wäre dann ARRAY.COMBINE intern, die in vnResult aufgerufen wird. Punkte in den Namen der internen LAMBDAs sollten eher vermieden werden.
Auch das hier geht. Argumente werden nach unten durchgereicht.
Code:
=LAMBDA(Irgendwas;LET(
vnArgEins;{11.12};
vnArgZwei;{1.2;3.4};
vnArgDrei;{5.6;7.8;9.10};
fnCombine;LAMBDA(a;b;LET(x;ZEILEN(a);y;SPALTEN(a);z;ZEILEN(b);k;SEQUENZ(x);m;SEQUENZ(x+z);n;SEQUENZ(;y);WENN(m<=x;INDEX(a;k;n);INDEX(b;m-x;n))));
vnResult;fnCombine(vnArgEins;fnCombine(vnArgZwei;vnArgDrei));
vnResult))(1)
Ganz allgemein wäre eine Syntax da so...
Code:
=LAMBDA(Argument;LET(fnSumme;LAMBDA(X;Y;X+Y);fnProdukt;LAMBDA(X;Y;X*Y);vnResult;Argument+fnSumme(10;10)+fnProdukt(5;5);vnResult))(1)
Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awardshttps://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
Scheint geklappt zu haben. Danke Dir!