Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1148to1152
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

nochmal FormulaArray

nochmal FormulaArray
EffHa
Hallo,
ich muss diese Formel per VBA in eine Zelle schreiben:
=SUM((MATCH(Auswertung!$K$1:Auswertung!$K$467&Auswertung!$D$1:Auswertung!$D$467, Auswertung!$K$1:Auswertung!$K$467&Auswertung!$D$1:Auswertung!$D$467; 0)=ROW($1:$467) *(Auswertung!$K$1:Auswertung!$K$467=7)*(Auswertung!$D$1:Auswertung!$D$467""))*1)
Das funktioniert bis einschließlich =9 (Auswertung!$K$1:Auswertung!$K$467=9)
Ab 10 (Auswertung!$K$1:Auswertung!$K$467=10) bekomme ich aber immer einen Laufzeitfehler '1004' Die FormulaArray-Eigenschaft des Range-Objektes kann nicht festgelegt werden.
Hat jeman eine Idee?
Gruß
Fritz
Wie groß ist denn der Zuweisungsbereich...
25.03.2010 18:24:00
Luc:-?
…oder steht in 10 schon was, Fritz?
Gruß Luc :-?
AW: Wie groß ist denn der Zuweisungsbereich...
25.03.2010 19:09:12
effha
Hallo Luc,
Es handelt sich bei der Formel um folgendes:
Ich muss die Werte einer Spalte (D) zählen ohne doppelte Einträge zu berücksichtigen.
Außerdem will ich aber nur die Anzahl der Werte in Abhängigkeit des Wertes in der Spalte "K" haben
Die Zeilenanzahl ist 467
In Spalte "K" sind Werte von 7 bis 14
Was meinst Du mit Zuweisungsbereich?
Gruß Fritz
...den Zellbereich, dem die Matrixformel...
25.03.2010 19:51:33
Luc:-?
…zugewiesen wdn soll, Fritz,
also so etwas wie Range("P1:P467").FormulaArray = "…deineFml…"
Gruß Luc :-?
AW: ...den Zellbereich, dem die Matrixformel...
25.03.2010 20:06:18
effha
Das ist nur eine Zelle in der dann der berechnete Wert stehen soll
Anzeige
Versuche mal Folgendes,...
26.03.2010 00:46:36
Luc:-?
…Fritz…
Sub FmlEinf()
Range("M1").FormulaArray = "=SUM((MATCH(Auswertung!K1:K10&Auswertung!D1:D467," & _
"Auswertung!K1:K467&Auswertung!D1:D467,0)=ROW(1:467)*" & _
"(Auswertung!K1:K467=7)*(Auswertung!D1:D467""""))*1)"
Range("N1").Formula = "=SUMPRODUCT((Auswertung!D1:D467"""")*(Auswertung!K1:K467=7))"
End Sub
Natürlich in die richtige Zelle! N1 enthält hier eine Alternativ-Fml, die das gleiche Ergebnis liefern dürfte. Mitunter tut sich XL/VBA schwer mit einzelligen Matrixfmln, aber unter xl12 hat auch das geklappt, nur, dass dein Fml-Monster #NV liefert, wenn mal in einer Zeile beide Zellen leer sind. Das passiert bei der Alternative nicht.
Übrigens, alles, was ich in deiner Fml weg gelassen habe, war überflüssig. Außerdem stand da wohl auch noch ein Semikolon anstelle eines Kommas.
Gruß Luc :-?
Anzeige
AW: Versuche mal Folgendes,...
26.03.2010 11:06:28
EffHa
Hallo Luc,
Die Alternativformel zählt alle Einträge, doppelte werden nicht berücksichtigt, aber die andere, die Du bereinigt hast funktioniert jetzt.
Danke und bis dahin
Gruß
Fritz
Ach so! Auf Doppelte hatte ich nicht getestet! orT
26.03.2010 18:05:53
Luc:-?
Gruß+schöWE, Luc :-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige