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

Dynamische Summe von Spalte

Dynamische Summe von Spalte
10.03.2004 13:22:01
TinoB
hallo excelfans,
ich habe wieder ein problem, bei dem ich nicht weiter weiß. ich möchte von zb der SpalteZ ab der Zeile20 die summe bilden. jetzt ist es aber so, das die anzahl der Zeilen sich immer ändert. wie lautet die VBA Anweisung dazu, das sich in die letzte leere Zelle der Spalte die summe einträgt? ich weiß, es funktioniert über diese formel: ActiveCell.FormulaR1C1 = "=SUM(R[...]C:R[-20]C)" nur muß diese dynamisch gehalten werden. und ich habe keine ahnung wie dies funktioniert. im forumarchiv sind zwar schon einige themen darüber, aber das passende habe ich da noch nicht gefunden. könnte mir jemand helfen?
Danke
Tino

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dynamische Summe von Spalte
10.03.2004 13:29:26
Hans W. Herber
Hallo Tino,
eine Funktion, die in die letzte Zeile eine Summe einträgt, gibt es nicht, denn Funktionen können nicht auf anderen Zellen schreibend zugreifen.
Du hast drei Möglichkeiten:

  • Setze die Summenformel an den Kopf der Spalte, so bleibt sie immer aktuell - Beispiel: SUMME(Z20:Z65536)

  • Setzte die Summenformel in eine andere Spalte, gleiches Ergebnis

  • Lass die Summe über VBA eintragen.


Wenn Du den letzten Punkt umsetzen möchtes, findest Du in meiner FAQ hier einen Hinweis:
http://xlfaq.herber.de/texte/022098h.htm
gruss hans
Anzeige
AW: Dynamische Summe von Spalte
10.03.2004 14:03:12
TinoB
Hallo Hans,
danke, habe es so gelöst. denke es ist ok so oder sollte man noch etwas daran änder?

Sub Summe()
lr = Cells(Rows.Count, 1).End(xlUp).Row
Cells(lr + 1, 7).Activate
Dim iCol As Integer
Dim sFormula As String
iCol = ActiveCell.Column
sFormula = "=SUM(R1C" & iCol & ":R[-1]C" & iCol & ")"
ActiveCell.FormulaR1C1 = sFormula
End Sub

Grüße
Tino
AW: Dynamische Summe von Spalte
10.03.2004 14:08:52
Hans W. Herber
... einfach nur der reinen Lehre wegen ;-)
In der VBA-Programmierung sind Selektieren und Aktivieren Teufelszeug, verzichte darauf. Das hieße im konkreten Fall, die Summenzelle als Bereichsvariable ansprechen und dem Cursor seine wohlverdiente Ruhe lassen, also:
Dim rng as Range
Set rng = Cells(Rows.Count, 1).End(xlUp).Row + 1
...
rng.FormulaR1C1 = sFormula
Merke zusätzlich: Variablendeklarationen innerhalb von Prozeduren gehören an den Anfang der Prozedur.
Gruss hans
Anzeige
wobei,
10.03.2004 14:13:33
TinoB
es gibt doch noch ein problem. es soll erst ab der Zeile20 die summe gebildet werden! was muß ich da noch ändern?
Grüße

123 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige