Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
404to408
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
404to408
404to408
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Wie sieht die Formel im Makro aus

Wie sieht die Formel im Makro aus
TinoB
hallo leute,
hatte letztens mal eine anfrage wegen einer formel die zwei bedingungen erfüllt. habe diese jetzt gefunden und zusammengestellt.
=SUMMENPRODUKT(($F$20:$F$100=$X21)*($K$20:$K$100=0)*$W$20:$W$100)
nun möchte ich diese aber gerne in ein makro einfügen. ich weiß, aufgezeichnet sieht diese dann so aus:
ActiveCell.FormulaR1C1 = _
"=SUMPRODUCT((R20C6:R100C6=RC24)*(R20C11:R100C11=100)*R20C23:R100C23)"
nur hilft mir dies nicht viel weiter, da diese wieder dynamisch sich entsprechend der anzahl der zeilen anpassen soll. wie macht man dies, das F, K und W soweit gehen, wie die zellen gefüllt sind? könnte mir da jemand helfen? und noch etwas, ist es eigentlich auch möglich, hier in diesem beispiel die 0 dynamisch anzupassen, soll heißen, es können auch irgend welche andere zahlen sein, die gleich sind und miteinander addiert werden sollen.
Danke
Tino

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Wie sieht die Formel im Makro aus
Ramses
Hallo
eigentlich ganz einfach :-))
ActiveCell.FormulaLocal = "=SUMMENPRODUKT(($F$20:$F$100=$X21)*($K$20:$K$100=0)*$W$20:$W$100)"
Mit FormulaLocal weist du EXCEL an, die lokale Formelbezeichnung zu verwenden, und kannst ganz normal schreiben :-))
Gruss Rainer
AW: Wie sieht die Formel im Makro aus
TinoB
Hallo Rainer,
ja, das mit "ActiveCell.FormulaLocal =" ist mir klar. nur möchte ich halt gerne die formel dynamisch gestalten. soll heißen, ab der Zeile20 bis zur letzten gefüllten Zelle. wobei, wenn ich mir es recht überlege, ist dies vielleicht gar nicht notwendig, ich bräuchte ja nur als letzte Zeile 65536 einzugeben. damit wäre das erste problem gelöst.
aber ist es auch möglich, die bedingung, nach entsprechendem inhalt der SpalteK zuzuweisen. mal angenommen ich weiß nicht welche zahlen in der SpalteK stehen die formel soll aber trotzdem danach entscheiden, welche zahlen mehrmals vorkommen und diese dann entsprechend der SpalteW addieren.
Tino
Anzeige
AW: Wie sieht die Formel im Makro aus
Ramses
Hallo
dann such doch einfach die letzte gefüllte Zelle in der Spalte
x = Range("A65536").End(xlup).Row
ActiveCell.FormulaLocal = "=summe(A1:A" & x & ")"
"....aber ist es auch möglich, die bedingung, nach entsprechendem inhalt der SpalteK zuzuweisen. mal angenommen ich weiß nicht welche zahlen in der SpalteK stehen die formel soll aber trotzdem danach entscheiden, welche zahlen mehrmals vorkommen und diese dann entsprechend der SpalteW addieren....
Sorry, aber da bin wohl schon zu alt dafür ;-)
Kannst du das nochmal erklären ? Ich hab' das nicht kapiert.
Gruss Rainer
Anzeige
AW: Wie sieht die Formel im Makro aus
TinoB
Hallo Rainer,
danke erst einmal für die antwort, so hatte ich dies gemeint.
man weiß zwar selber was man will, es ist aber gar nicht so einfach dies zu erklären. also nochmal etwas anders. es ist doch so, dass die zweite bedingung zum addieren in der SpalteK steht, in diesem fall die 200. nur was mache ich, wenn ich nicht weiß was für eine zahl in dieser SpalteK steht? ich will damit sagen, es könnte auch eine 1, 5 oder irgend eine andere mögliche zahl stehen, die natürlich öffters vorkommen kann. kann man die formel so anpassen? oder muß mann da für alle eventuell eintretenten möglichkeiten eine eigene formel schreiben?
Tino
=SUMMENPRODUKT(($F$20:$F$100=X21)*($K$20:$K$100=200)*$W$20:$W$100)
Anzeige
AW: Wie sieht die Formel im Makro aus
Ramses
Hallo
"....wenn ich nicht weiß was für eine zahl in dieser SpalteK steht?..."
Von irgenwo her muss der Wert ja kommen und auf eine ganze Spalte kannst du keinen Bezug nehmen.
Also entweder auf eine zelle oder eine Variable
=SUMMENPRODUKT(($F$20:$F$100=X21)*($K$20:$K$100=K1)*$W$20:$W$100)
oder
x = 300
ActiveCell.FormulaLocal = "=SUMMENPRODUKT(($F$20:$F$100=X21)*($K$20:$K$100=" & x & ")*$W$20:$W$100)"
Gruss Rainer
hm,
TinoB
ja ok. genau das mit der kompletten spalte ist mir auch eben eingefallen. da dies dann wohl nicht geht, muß ich mir wohl etwas anderes einfallen lassen.
Danke
Tino
Anzeige
Merci. Geschlossen o.T.
Ramses
...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige