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

WorksheetFunction auf Array anwenden

Forumthread: WorksheetFunction auf Array anwenden

WorksheetFunction auf Array anwenden
18.08.2023 21:52:06
Florian
Hallo

Bisher habe ich für die Berechnung von Summe oder das Produkt aller Einträge eines Arrays eigens geschnitzte Functions mit Schleifen verwendet. Meine Arrays sind ein- oder zweidimensional und werden in einem Makro gebildet.

Nun habe ich zufällig mit freudigem Schrecken herausgefunden, dass das viel einfacher geht, und zwar mit
WorksheetFunction.Sum(MeinArray) und WorksheetFunction.Product(MeinArray)

Mit Freude, weil ich mir in Zukunft diese Functions erspare. Mit Schrecken, weil ich den Verdacht habe, dass da noch andere Schätze schlummern. Habe nirgends gelesen, dass man WorksheetFunctions auch mit Arrays ohne Arbeitsblatt funktionieren.

Nun meine Frage: Gibt es auch eine WorksheetFunction, die
- zwei gleich große Arrays multiplizieren kann, also a(1,1) mal b(1,1), a(2,1) mal b(2,1), usw.
- oder addieren, also a(1,1) plus b(1,1), a(2,1) plus b(2,1), usw.
- einen Faktor in ein Array hineinmultiplizieren kann, also a(1,1) mal Faktor, a(2,1) mal Faktor, usw.
- eine Zahl in ein Array hineinaddieren kann,
- die Anzahl aller positiven Zahlen eines Arrays ermitteln kann,
- die Anzahl ermitteln, wie oft ein bestimmter Wert in einem Arrays vorkommt?

So, das wäre meine Wunschliste. Freue mich gespannt auf eure Antworten.

LG, Florian
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
WorksheetFunction auf Array anwenden
19.08.2023 10:16:24
Daniel
MMult ???

Ob Worksheetfunctions mit Arrays funktionieren, hängt davon ab, ob die explizit Zellbereiche als Eingabe benötigen, dann nicht.

Was Worksheetfunctions auch nicht können sind Matrixformeln.
Solche muss man in VBA als Schleife programmieren.

Gruß Daniel
WorksheetFunction auf Array anwenden
20.08.2023 07:33:35
Florian
Hi Daniel

Die Funktion MMULT gibt das Produkt zweier Matrizen zurück und nicht das Produkt der Elemente mit gleichen Indizes.

Werde dafür wohl weiterhin Functions mit Schleifen verwenden müssen.

Danke jedenfalls.
LG, Florian
Anzeige
Off topic
20.08.2023 08:32:31
RPP63
Moin!
In einem aktuellen Excel (365/Online) geht folgendes:
 ABCDEFGHIJK
1629 427 24463
2631 171 6211
3791 716 4996

ZelleFormel
I1=MAP(A1:C3;E1:G3;LAMBDA(a;b;a*b))


Allerdings sind MAP und LAMBDA (noch) nicht in die Worksheetfunction-Auflistung aufgenommen.

Gruß Ralf
Anzeige
;

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