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.

Summe bilden VBA
#1
Code:
ThisWorkbook.Worksheets("Übersicht").Range("A" & Rows.Count).End(xlUp).Offset(1, 0).Value = "Summe"
Hallo zusammen,
ich würde gerne für die Spalte B eine Summe bilden. Die Anzahl an Zeilen innerhalb der Spalte kann variieren. Die Summe soll in die erste freie Zelle am Ende geschrieben werden. Die erste zu summierende Zelle wäre B20 (und wie gesagt nach unten hin offen). Den Text "Summe" habe ich in Spalte A wie oben stehend hin bekommen aber mit der Summe das will nicht klappen =(
Freue mich über Input,
Grüße Leo
Antworten Top
#2
Hallo Leo,

Code:
Dim Freie as Long

With ThisWorkbook.Worksheets("Übersicht").
    Freie = .Range("B" & Rows.Count).End(xlUp).Row + 1
   .Range("A" & Freie) = "Summe"
   .Range("B" & Freie) = WorksheetFunction.Sum(Range("B20:B" & Freie - 1)
End With
Schöne Grüße
Berni
[-] Folgende(r) 1 Nutzer sagt Danke an MisterBurns für diesen Beitrag:
  • Leonhard
Antworten Top
#3
Servus Berni,

vielen Dank fürs Erste. Der Code wirft an der richtigen Stelle die falsche Zahl aus Undecided
Ergebnis müsste ~-30 Mio. sein, raus kommt 619.000..
hast du eine Idee woran das liegen mag?

Grüße
Leo
Antworten Top
#4
Äh... nein. Ohne deine Datei zu kennen...
Aber geh mal mit F8 den Code im Einzelschrittmodus durch. Wenn der gelbe Balken unterhalb der Zeile
Code:
Freie = .Range("B" & Rows.Count).End(xlUp).Row + 1
steht, fahr mal mit dem Mauszeiger auf "Freie" und schau, welcher Wert angezeigt wird. Erkennt Excel die richtige freie Zeile?
Ich bin ja mal davon ausgegangen, dass in Spalte A und B gleich viele Einträge sind.
Schöne Grüße
Berni
Antworten Top
#5
Code:
Dim lngLetzteZeile As Long

With Worksheets("Übersicht")
'letzte Zeile mit Daten in Spalte H ermitteln:
lngLetzteZeile = .Cells(Rows.Count, 2).End(xlUp).Row
'eine Zeile darunter die Summe eintragen:
.Cells(lngLetzteZeile + 1, 2).Formula = "=Sum(B20:B" & lngLetzteZeile & ")"
End With
Habe es jetzt hiermit umgesetzt. Aber tausend Dank für deine Hilfestellung.
Antworten Top


Gehe zu:


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