Anzeige
Archiv - Navigation
1244to1248
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Array Formel eintragen

Array Formel eintragen
Peter
Guten Abend
Ich habe in der Datei "Simulation_Ziel" im Bereich N5:S7 eine komplizierte Matrixformel (immer die gleiche), die mir aus der Datei "Simulation_Quelle" Daten abfragt.
Damit das funktioniert, müssen die hochgeladenen Dateien mit "Simulation_Quelle.xlsm" resp. mit "Simulation_Ziel.xlsm" benannt werden. Zudem muss in der Datei "Simulation_Ziel" in Zelle O14 der Name [Simulation_Quelle.xlsm] in eckigen Klammern stehen.
Nun möchte ich diese Formeln mittels VBA (testweise im Bereich N9:S11) einfügen. Der Code habe ich in einem Modul eingetragen und er könnte mit Anklicken des blauen Textfeldes aufgerufen werden. Nur funktioniert mein Code nicht und ich weiss nicht was ich ändern muss.
Danke für eure Hilfe.
Gruss, Peter
Dateiname "Simulation_Quelle.xlsm": https://www.herber.de/bbs/user/78449.xlsm
Dateiname "Simulation_Ziel.xlsm": https://www.herber.de/bbs/user/78450.xlsm
Userbild

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Array Formel eintragen
15.01.2012 10:01:48
Hajo_Zi
Hallo Peter,
ich sehen keinen Grund diese aufwemndigen Sachen mit den Dateien zu machen. Du hast in VBA die Formel schon in englisch eingetragen, das muss bei Array Formeln sein.

AW: Array Formel eintragen
15.01.2012 14:36:44
Peter
Hallo Hajo
ich habe folgendes gemacht:
1. Array-Formel in Tabelle eingetragen
2. in Direktbereich ?activecell.FormulaArray eingegeben
3. mit VBA-Code with Range : .FormulaArray = "" End With (innerhalb der "" das Ergebnis aus 2. eingetragen, wobei, die " verdoppelt wurden)
Das Vorgehen habe ich in meinem ersten Eintrag im Detail aufgezeigt und die entsprechenden Dateien hochgeladen.
Weshalb funktioniert das nicht?
Kann mir da jemand weiterhelfen?
Danke und Gruss, Peter
Sub testArray()
With Range("TestEintrag")
.FormulaArray = "=IF($M7="""","""",INDEX(INDIRECT("" '""&OpenEx&$D7&""'!""&nurtext(N$2)&""2:""& _
nurtext(N$2)&""12""),MAX(IF((INDIRECT(""'""&OpenEx&$D7&""'!E2:E12"")

Anzeige
AW: Array Formel eintragen
15.01.2012 14:52:43
Hajo_Zi
Hallo Peter,
aus Deinem Code ist nicht ersichtlich was OpenEx ist vielleicht Variable dann ist diese Schreibweise OpenEx&$D7 falsch.
Gruß Hajo
AW: Array Formel eintragen
15.01.2012 15:08:36
Peter
Hallo Hajo
OpenEx ist eine benannte Zelle und bezieht sich auf =Eintrag!$O$14
In dieser Zelle steht [Simulation_Quelle.xlsm] - also der Dateiname der Quelldatei.
Gruss, Peter
AW: Array Formel eintragen
15.01.2012 15:13:26
Hajo_Zi
Hallo Peter,
dann wäre es doch Range("openEx") oder sehe ich das falsch. aber die verbindung mit $D7 ist mir da auch nicht klar.
Vielleicht solltest Du mal die korekte Formel posten.
Da noch mehr Sachen unklar sind z.b. was ist nurtext(N$2)
Gruß Hajo
Anzeige
AW: Array Formel eintragen
15.01.2012 15:46:40
Peter
Hallo Hajo
Die korrekte Formel steht in der Datei "Simulation_Ziel", die ich hochgeladen habe (vgl. erster Eintrag) und zwar in allen Zellen des Bereiches N9:S11. "nurText" ist eine Funktion, die aus einem String alle Zahlen eliminiert. Aus E2 wird dann E und aus AE2 wird dann AE.
Gruss, Peter
AW: Array Formel eintragen
15.01.2012 17:36:40
Peter
Hallo Hajo
Bin jetzt mit der VBA-Hilfe schlauer geworden. Die Formel kann in VBA nur in der R1C1 - Bezugsart übergeben werden. Zudem darf die Formel nicht mehr als 255 Zeichen beinhalten.
Wenn das gegeben ist, kann ich eine Formel mittels VBA tatsächlich eintragen.
Jetzt ist ein anderes Problem aufgetaucht, doch das stelle ich in einen weiteren Thread, sonst wird das ganze unübersichtlich.
Gruss, Peter
Anzeige
AW: Array Formel eintragen
15.01.2012 17:39:09
Hajo_Zi
Hallo Peter,
das mit R1C1 steht in der Hilfe ich habe es vor kurzem getestet mit der A1 schreibweise und es ging.
Gruß Hajo
AW: Array Formel eintragen
15.01.2012 20:15:08
Peter
Hallo Hajo
Danke für den Hinweis. Dann bin ich bei meiner ursprünglichen Version daran gescheitert, dass die Formel mehr Zeichen als 255 hatte.
Gruss, Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige