Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
564to568
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
564to568
564to568
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Summenbildung per VBA
12.02.2005 22:26:08
Martin
Hi,
ich habe eine Summenbildung mit VBA, welche aber nur ein Fenster mit
dem Ergebnis anzeigt.
Wie kann man mit VBA Werte A10:A50 zusammenzählen und
anschließend 2 zeilen unter dem letzten Wert, das wäre A50, dass Ergebnis
einfügen lassen. In der Zelle B1 (variable) ist der Rabatt eingegeben.
Wird die Schaltfläche gedrückt, soll A10:A50 addiert und der Rabatt
Zelle B1 abgezogen werden.
Kann mir bitte jemand weiterhelfen.
Danke
Gruß Martin

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Summenbildung per VBA
12.02.2005 22:29:01
Josef
Hallo Martin!
Warum mit VBA und nicht einfach einer Formel in "A52" ?

Range("A52") = Application.Sum(Range("A10:A50")) - Range("B1")

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
AW: Summenbildung per VBA
12.02.2005 22:39:59
Martin
Hallo Sepp,
ich habe eine Exceltabelle bei welcher Daten vom Blatt 1 in das Blatt 2 kopiert werden.
Da die Zeilenanzahl ständig variiert, würde mir bei jedem kopieren die Zelle überschrieben.
Deshalb wäre gut, wenn ich eine Summenbildung mit VBA erzwingen könnte und wie bereits
beschrieben in der 2. Zeile unter dem letzten Wert eingefügt würde.
Danke
Gruß Martin
Anzeige
AW: Summenbildung -Variante?
Jens_Pu
Hallo Martin,
nur so als Denkanstoß, deswegen auch noch offen.
Schon mal dran gedacht, die Summenzeile oben zu machen?
Ich mache das teilweise sehr gerne, dass Die Summen über den Spalenbeschriftungen stehen.
Hat den Vorteil, die Formeln sind fest und ich kann unten anfügen, löschen einfügen wie ich will. zusätzlich habe ich immer auch eine Bezeichnung der Summe durch die darunterliegende Spaltenbeschriftung.
Gruß Jens
AW: Summenbildung per VBA
12.02.2005 22:51:35
Josef
Hallo Martin!
Dann zB. so.

Sub summeDynamisch()
Dim lastRow As Long
On Error GoTo ERRORHANDLER
lastRow = IIf(Range("A65536") <> "", 65536, Range("A65536").End(xlUp).Row)
If lastRow < 10 Then lastRow = 10
Cells(lastRow + 2, 1) = _
Application.Sum(Range(Cells(10, 1), Cells(lastRow, 1))) - Range("B1")
Exit Sub
ERRORHANDLER:
Cells(lastRow + 2, 1) = "#WERT"
End Sub

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Anzeige
AW: Summenbildung per VBA
12.02.2005 23:17:53
Martin
Hallo Sepp,
genau. Das ist es.
Nur habe ich in B1 Prozentwerte drinnen stehen. Hab es ausprobiert.
Der errechnte Wert stimmt nicht. Bsp. 60 + 10 - B1 (10%) = 60
Eigentlich müßten es 63 sein.
Danke
Gruß Martin
AW: Summenbildung per VBA
12.02.2005 23:24:20
Josef
Hallo Martin!
Prozentrechnen ist schon schwer ;-)
Dann halt so!

Sub summeDynamisch()
Dim lastRow As Long
On Error GoTo ERRORHANDLER
lastRow = IIf(Range("A65536") <> "", 65536, Range("A65536").End(xlUp).Row)
If lastRow < 10 Then lastRow = 10
Cells(lastRow + 2, 1) = _
Application.Sum(Range(Cells(10, 1), Cells(lastRow, 1))) - _
Application.Sum(Range(Cells(10, 1), Cells(lastRow, 1))) * Range("B1")
Exit Sub
ERRORHANDLER:
Cells(lastRow + 2, 1) = "#WERT"
End Sub

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Anzeige
AW: Summenbildung per VBA
Kay
Hallo Martin,
wenn ich das richtig sehe bezieht sich das auf den Code weiter unten, dort wo ich auch schon mal geantwortet habe.
Da könnte mann es mit einbauen.
Sorry Josef das ich mich einmische.
so z.B.

Sub SuchenUndKopieren()
Dim wksQ As Worksheet   'Quell-Tabelle
Dim wksZ As Worksheet   'Ziel-Tabelle
Dim rng As Range
Dim lngQ As Long
Dim lngz As Long
Set wksQ = Sheets("Quelle")
Set wksZ = Sheets("Ziel")
wksZ.Range("A2:E65536").Clear
lngQ = wksQ.Range("E65536").End(xlUp).Row
lngz = wksZ.Range("A65536").End(xlUp).Row + 1
For Each rng In wksQ.Range(wksQ.Cells(1, 5), wksQ.Cells(lngQ, 5))
If rng.Value > 0 Then
rng.EntireRow.Copy wksZ.Cells(lngz, 1)
lngz = lngz + 1
End If
Next
wksZ.Cells(lngz + 2, 5) = Application.Sum(Range(wksZ.Cells(1, 5), wksZ.Cells(lngz, 5)))-Range("B1")
End Sub

Gruß
Kay
Anzeige
AW: Summenbildung per VBA
13.02.2005 00:44:56
Martin
Hallo Kay, Hallo Sepp,
danke, beides funktioniert perfekt.
Gruß Markus

54 Forumthreads zu ähnlichen Themen


hallihallo!
ich hab jetzt schon ziemlich lang rumgesucht, komm aber leider nicht zum durchbruch. dabei - so unterstelle ich - hab ich ein problem, das schon viele gehabt haben müssten und das wahrscheinlich auch nicht unlösbar ist.
ich habe eine tabelle mit einer variablen anzahl von ze...
Anzeige

Hallo zusammen,
bin neu hier und hätte eine Frage bezüglich der Berechnung einer Summe. Folgendes Szenario: Ich möchte in B1 eine Summe berechnen aus Werten der B Spalte. Soweit klar! Die einzelnen Werte in Spalte B werden in jeder Zeile mit einem Wert aus der A Spalte "nebenan" berechnet....

Hallo,
folgendes Problem:
In einer Spalte stehen von 1- max. 30 Zahlen untereinander, deren Summe ich in einer anderen Spalte benötige. Danach fängt ein neuer Block an.
Also
3
4
5
Summe: 12
4
9
Summe 13
4
Summe 4
6
7
7
3
2
...
Anzeige

vorhanden ist.
Hallo,
ich einer Spalte mit 10000 Namen möchte ich per VBA rausfinden, ob ein Name (in Celle A1) vorhanden ist.
Wie mache ich das?
Vielen Dank

Servus...
ich hab in meiner Tabelle viele VBA Formeln, z.b. VLookup... oder mit Cells(r, 5)...
wenn ich jetzt eine Spalte einfüg... nehmen wir mal an zwischen 3 und 4... dann heißt ja die Spalte 5 nun 6...
d.h. die Formel mit cells(r, 5) stimmt ja nicht mehr.. die sollte ja Cells(r,...

Hallo,
ich habe mehrere Bereiche in einer Tabelle. In der ersten Spalte sind Werte und in der Zweiten sind ggf. Texte.
Nun soll eine Summe über die Bereiche gebildet werden, aus allen Zeilen, bei denen in der zweiten Spalte Text steht.
Bereich 1: N346:N354 (hier sind die Werte) und...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige