Seite 1 von 1

Matrixformel per Makro

Verfasst: Sa, 13.03.2010 10:56
von Thorsten_Z
Moin Oogemeinde,

ich versuche per Makro eine Matrixformel in eine Zelle zu schreiben. Mit dem Makrorecorder konnte ich mal grade nachvollziehen, dass eine "einfache" formel wie z.B. =SUMME(....) als String übergeben wird. Das klappt mit der Matrixformel nicht mehr, wegen der vorhandenen Anführungszeichen (") in der Formel.
Hat jemand Erfahrung damit, wie eine Matrixformel per Makro in eine Zelle geschrieben werden kann? Bin für jeden Hinweis dankbar.

Gruß
Thorsten

Re: Matrixformel per Makro

Verfasst: Sa, 13.03.2010 11:02
von turtle47
Hi Thorsten,

wie wäre es, zuerst mal die SuFu des Forums zu bemühen.

Dann hättest Du bestimmt auch diesen Beitrag gefunden.

Jürgen

Re: Matrixformel per Makro

Verfasst: Sa, 13.03.2010 11:13
von Thorsten_Z
... selbstvertändlich habe ich zuerst gesucht... aber dieser Beitrag hilft mir nicht weiter. Daher dieser neue Beitrag.
Ich bräuchte ein kurzes anschauliches Codebeispiel. anbei mal die Formel, die ich übergeben möchte:

Code: Alles auswählen

=WENN(INDEX(INDIREKT($J$7&"B1:B500");KKLEINSTE(WENN(INDIREKT($J$7&"A1:A500")=$A$86;ZEILE(INDIREKT($J$7&"B1:B500")));$B$86))=0;"";INDEX(INDIREKT($J$7&"B1:B500");KKLEINSTE(WENN(INDIREKT($J$7&"A1:A500")=$A$86;ZEILE(INDIREKT($J$7&"B1:B500")));$B$86)))

Re: Matrixformel per Makro

Verfasst: Sa, 13.03.2010 12:01
von turtle47
Hallo Thorsten,

es sieht also folgendermassen aus:

Übergebe die Formel mit

Code: Alles auswählen

ArrayFormula
an in die Zelle.

Die Zellbereiche musst Du in doppelte Anführungszeichen setzen.

Code: Alles auswählen

"=WENN(INDEX(INDIREKT($J$7&""B1:B500"")........)"
Und jetzt ist noch folgendes zu tun. Du musst die Funktionen in englisch schreiben weil es für Matrixformeln kein

Code: Alles auswählen

ArrayFormulaLocal
gibt. Dazu siehe auch diese Beiträge.

Viel Erfolg.

Jürgen

Re: Matrixformel per Makro

Verfasst: Sa, 13.03.2010 12:22
von Thorsten_Z
Super... damit komme ich voran. Vielen Dank

Gruß
Thorsten