Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1428to1432
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
VBA Summe einer Spalte
28.05.2015 14:49:16
Niclas
Hallo Community,
angenommen ich möchte in C1 mir die Summe aller Werte aus Spalte S anzeigen lassen ohne zu wissen wie groß der Bereich ist, sprich von S2 bis Ende der Tabelle, wie könnte der entsprechende Code dafür lauten.
Ich habe es mit dem Macrorecorder versucht aber das Ergebnis ist nicht umsetzbar auf andere Tabellen in der Datei.
Der Code müsste eigentlich sagen ,,Schreibe mir die Summe aller positiven Werte aus S2 bis Tabellenende im aktuellen Sheet". Leider hapert es mit der Umsetzung aufgrund mangelnder VBA Kenntnisse.
Wenn mir jemand helfen könnte wäre ich sehr dankbar.
Euer Niclas

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Summe einer Spalte
28.05.2015 14:54:22
Hajo_Zi
warum nicht einfach Summewenn()? S2:S1048576

AW: VBA Summe einer Spalte
28.05.2015 15:05:37
Niclas
Folgendes:
Range("E1").Value = WorksheetFunction.SumIf(Range("S2:S1000"), ">0", Range("S2:S1000"))
funktioniert soweit. Ich würde die Zelle jedoch noch etwas formatieren.Ich weiß das das zB über with geht, jedoch kenne ich nicht den genauen Code. Wie muss ich schreiben bzw die Zelle E1 konkret ansprechen und diese soll dann das machen:
.Interior.Color = vbYellow
.Borders(xlEdgeTop).Weight = xlThick
.Borders(xlEdgeBottom).Weight = xlThick
.Borders(xlEdgeRight).Weight = xlThick
.Borders(xlEdgeLeft).Weight = xlThick
Niclas

Anzeige
AW: VBA Summe einer Spalte
28.05.2015 15:04:01
Michael
Hallo Niklas!
In VBA zB so: In die Zelle C1 wird die Summe der Spalte B wie folgt geschrieben:
 'Summe der gesamten Spalte B
Range("C1").Value = WorksheetFunction.Sum(Range("B:B"))
'Summe von B2 bis Ende B2 OHNE Leerzeilen
Range("C1").Value = WorksheetFunction.Sum(Range(Cells(2, 2), Cells(2, 2).End(xlDown)))
'Summe von B2 bis letzte Zeile B MIT Leerzeilen
Range("C1").Value = WorksheetFunction.Sum(Range("B2:B" & Range("B:B").SpecialCells(xlCellTypeLastCell).Row))
LG
Michael

AW: VBA Summe einer Spalte
28.05.2015 15:05:28
Michael
Hallo Niclas!
In VBA zB so (Zelle C1 soll den Summenwert erhalten):
'Summe der gesamten Spalte B
Range("C1").Value = WorksheetFunction.Sum(Range("B:B"))
'Summe von B2 bis Ende B2 OHNE Leerzeilen
Range("C1").Value = WorksheetFunction.Sum(Range(Cells(2, 2), Cells(2, 2).End(xlDown)))
'Summe von B2 bis letzte Zeile B MIT Leerzeilen
Range("C1").Value = WorksheetFunction.Sum(Range("B2:B" & Range("B:B").SpecialCells(xlCellTypeLastCell).Row))
LG
Michael

Anzeige
AW: VBA Summe einer Spalte
28.05.2015 15:05:34
Michael
Hallo Niclas!
In VBA zB so (Zelle C1 soll den Summenwert erhalten):
'Summe der gesamten Spalte B
Range("C1").Value = WorksheetFunction.Sum(Range("B:B"))
'Summe von B2 bis Ende B2 OHNE Leerzeilen
Range("C1").Value = WorksheetFunction.Sum(Range(Cells(2, 2), Cells(2, 2).End(xlDown)))
'Summe von B2 bis letzte Zeile B MIT Leerzeilen
Range("C1").Value = WorksheetFunction.Sum(Range("B2:B" & Range("B:B").SpecialCells(xlCellTypeLastCell).Row))
LG
Michael

AW: VBA Summe einer Spalte
28.05.2015 16:57:53
Niclas
Hallo Michael,
und wie müsste ich die Formel umändern wenn ich nur Werte größer 0 in der besagten Spalte summiert haben will?
Niclas

Anzeige
AW: VBA Summe einer Spalte
28.05.2015 17:21:34
Michael
Hallo Niclas!
Dann so (wobei Du damit eher negative Werte ausschließt, denn ein 0-Wert ändert Deine Summe sowieso nicht): Varianten verstehen sich wie oben
Range("C1").Value = WorksheetFunction.SumIf(Range("B:B"), ">0")
Range("C1").Value = WorksheetFunction.SumIf(Range(Cells(2, 2), Cells(2, 2).End(xlDown)), ">0")
Range("C1").Value = WorksheetFunction.SumIf(Range("B2:B" & Range("B:B").SpecialCells(xlCellTypeLastCell).Row), ">0")
LG
Michael

124 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige