Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Dynamischer Summenbereich in Zelle einfügen
#1
Hallo zusammen,
ich bitte um VBA Hilfe,

wie muss das beiliegende Makro abgeändert werden, sodass die Summe nicht an das Ende der Spalte D sondern in die Zelle D2 automatisch nach Erweiterung der Tabelle eingefügt wird?
Vielen Dank für Eure Hilfe

Gruß Derhard


Angehängte Dateien
.xls   Dynamische Summe oben anfügen.xls (Größe: 44,5 KB / Downloads: 4)
Antworten Top
#2
Hallo Derhard,

warum gibst du nicht in D2 die Formel =SUMME(D4:D1000) ein, anstatt dies mit einem Makro lösen zu wollen?
Gruß Conny :)
_______________________________________________________________

Die Summe der Intelligenz auf unserem Planeten ist konstant, aber die Bevölkerung wächst!
Antworten Top
#3
Hallo,

1. wie Conny schreibt, braucht hier eigentlich kein Makro genutzt zu werden.
2. wenn Makro, warum dann die Formel und nicht den Wert gleich in die Zelle schreiben?
3. wenn Makro, dann würde ich es automatisch nach Eingabe in D starten lassen, das geht mittels Change Ereignis

Folgender Code setzt Deinen Wunsch um:


Code:
Sub Summe_unten()
Dim i As Long
i = Worksheets("Dokumentation").Cells(Rows.Count, 4).End(xlUp).Row
Range("D2").Formula = "=sum(D4:D" & i & ")"
End Sub
Und wenn du folgenden Code in Das Codemodul der Tabelle einfügst, dann wird der Code wie in 3.geschrieben ausgeführt:

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Row > 3 And Target.Column = 4 Then Summe_unten
End Sub
Und 2. ginge so:

Code:
Sub Summe_unten_als_Wert()
Dim i As Long
i = Worksheets("Dokumentation").Cells(Rows.Count, 4).End(xlUp).Row
Range("D2") = Application.Sum(Range("D4:D" & i))
End Sub
Gruß Atilla
Antworten Top
#4
Hallo Atilla,

Vielen Dank für Deine schnelle Hilfe!
Funktioniert super...

LG Derhard
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste