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

Summewenn mit VBA schreiben

Summewenn mit VBA schreiben
03.11.2016 19:23:56
Tyroler
Hallo Zusammen,
hätte frage bzgl. der Summewenns funktion im Excel.
Ich hab mit dem Makrorekorder die Summewennsfunktion angewendet.
Funktioniert auch soweit ganz gut.
WEnn ich nun das Makro aktiviere, schreibt er mir die komplette Formel in jede Zelle was wie folgt aussieht:
Range("L3").Select
ActiveCell.FormulaR1C1 = _
"=SUMIFS([Mappe1.xlsx]PROMIR10_TMP506!C13,[EPD_MA_31.xlsx]PROMIR10_TMP506!C5,R3C4,[Mappe1.xlsx]PROMIR10_TMP506!C6,RC[-2],[Mappe1.xlsx]PROMIR10_TMP506!C8,R1C12)"
Sprich wenn drei Bedingungen in der Mappe 1 erfüllt sind, dann soll er mir die Summe bilden und in der Aktive Dokument ausgeben.
Kann man das mittels einem VBA Code "eleganter" lösen, bzw. dass nur das ERgbnis als Zahl in jeder Zelle steht?
Vielen Dank für eure Hilfe!
Gruß Tyroler

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Summewenn mit VBA schreiben
03.11.2016 19:47:33
Daniel
HI
kommt darauf ein.
wenn du nur ein einziges Summewenns hast würde es mit Worksheetfunction.SumIfs gehen:
Range("L3").Value = Worksheetfunction.SumIfs(Workbooks("Mappe1.xlsx").Sheets("PROMIR10_TMP506").Columns(13), Workbooks("EPD_MA_31.xlsx").Sheets(PROMIR10_TMP506").Columns(5), Cells(3, 4), Workbooks("Mappe1.xlsx").Sheets("PROPMIR10_TMP506").Columns(6), Cells(3, 10), workbooks("Mappe1.xlsx").Sheets("PROMIR10_TMP506").Columns(8), Cells(1, 12))
wenn du mehrere davon hast die in einer Zeile oder Spalte stehen und die die gleiche Formel haben, ist es günstiger, die Formel in alle Zellen gleichzeitig zu schreiben und dann die Formeln durch den Wert zu ersetzen:
With Range("L3:L?")
.FormulaR1C1 = "=SumIfs(......)"
.Formula = .Value
End with
Gruß Daniel
Anzeige

308 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige