Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Summe als vba

Summe als vba
05.12.2003 10:40:01
Uwe
Guten morgen zusammen,

ich habe eine Addition bisher über eine Formel realisiert. Geht dieses auch über vba?

=SUMME('Tabelle1'!B2B65000)

Diese Summe steht in einer anderen Tabelle, Tabelle 3 oder 4.

Würd mich freuen, wenn jemand Helfen kann.


Gruß
Uwe
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: =WorksheetFunction.Sum
05.12.2003 10:48:59
Galenzo
Hallo,
so:
= WorksheetFunction.Sum(Range("b2:B65000").Value)

mfg
AW: =WorksheetFunction.Sum
05.12.2003 11:23:18
uwe
hallo,

vielen Dank, werds gleich mal testen.

Vielen Dank

Gruß

Uwe
AW: =WorksheetFunction.Sum
05.12.2003 11:46:24
Uwe
Hallo,

ich habe versucht, diese Summe, die in Tabelle eins ermittelt werden soll einer Zelle in Tabelle drei zuzuordnen.


Leider kommt die Fehlermeldung Typen unverträglich.

Mein Versuch sieht so aus.
Die Tabelle, in die das ergebnis geschrieben weren soll ist dabei Aktiviert.

Cells("C21").Value = WorksheetFunction.Sum(Sheets("Tabelle1").Range("b2:B65000").Value)

Würd mcih freuen, wenn jemandem was einfällt.

Gruß
Uwe
Anzeige
AW: =WorksheetFunction.Sum
05.12.2003 12:10:19
ingoG
Hallo Uwe,
versuchs mal mit:

[c21] = Application.WorksheetFunction.Sum(Sheets("Tabelle1").Range("b2:B65000"))

bei mir läuft das

Gruß Ingo

PS eine Rückmeldung wäre nett...
AW: =WorksheetFunction.Sum
05.12.2003 12:35:45
Galenzo
Schreibst du:
Range("C21").Value = WorksheetFunction.Sum(Sheets("Tabelle1").Range("b2:B65000"))
oder
Cells(21,3)=...
oder
[c21].Value = ...

Das tut's...

mfg
Anzeige
Vielen Dank an alle. Funktioniert!
05.12.2003 13:11:49
Uwe
Hallo,

vielen Dank für die Hilfe.

Funktioniert alles bestens.

Vielen Dnak an alle.

Gruß
Uwe

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Summe mit VBA berechnen


Schritt-für-Schritt-Anleitung

  1. Öffne den VBA-Editor: Drücke ALT + F11 in Excel.

  2. Einfügen eines Moduls: Klicke auf Einfügen > Modul.

  3. Code einfügen: Verwende den folgenden Code, um die Summe einer bestimmten Zelle in einem anderen Blatt zu berechnen:

    Sub SummeBerechnen()
       Dim summeWert As Double
       summeWert = Application.WorksheetFunction.Sum(Sheets("Tabelle1").Range("B2:B65000"))
       Sheets("Tabelle3").Cells(21, 3).Value = summeWert
    End Sub
  4. Ausführen des Codes: Führe das Makro aus, um die Summe zu berechnen und in die gewünschte Zelle zu schreiben.


Häufige Fehler und Lösungen

  • Fehlermeldung "Typen unverträglich": Achte darauf, dass die Zelle, in die du den Wert schreiben möchtest, korrekt referenziert ist. Beispielsweise kann ein Fehler auftreten, wenn du Cells("C21") anstelle von Cells(21, 3) verwendest.

  • Summe wird nicht aktualisiert: Stelle sicher, dass das Blatt mit den Daten aktiv ist, wenn du den VBA-Code ausführst, oder verwende die vollständige Referenz wie Sheets("Tabelle1").Range(...).


Alternative Methoden

Eine alternative Methode zur Berechnung der Summe in VBA ist die Verwendung einer Array-Variable, um die Daten zwischenzuspeichern:

Sub SummeMitArray()
    Dim werteArray As Variant
    Dim summeWert As Double
    werteArray = Sheets("Tabelle1").Range("B2:B65000").Value
    summeWert = 0

    For i = LBound(werteArray) To UBound(werteArray)
        summeWert = summeWert + werteArray(i, 1)
    Next i

    Sheets("Tabelle3").Cells(21, 3).Value = summeWert
End Sub

Praktische Beispiele

Um die Summe einer bestimmten Spalte zu berechnen, kannst du den folgenden Code verwenden:

Sub SummeEinerSpalte()
    Dim summeWert As Double
    summeWert = Application.WorksheetFunction.Sum(Sheets("Tabelle1").Columns("B"))
    Sheets("Tabelle4").Range("A1").Value = summeWert
End Sub

In diesem Beispiel wird die gesamte Spalte B summiert und das Ergebnis in A1 von Tabelle 4 geschrieben.


Tipps für Profis

  • Fehlerbehandlung: Implementiere Fehlerbehandlung in deinem VBA-Code, um mögliche Laufzeitfehler abzufangen. Beispiel:

    On Error Resume Next
    summeWert = Application.WorksheetFunction.Sum(Sheets("Tabelle1").Range("B2:B65000"))
    If Err.Number <> 0 Then
       MsgBox "Ein Fehler ist aufgetreten: " & Err.Description
    End If
  • Verwendung von Excel.Vba: Nutze die VBA Application.Sum-Methode für eine schnellere und effizientere Berechnung, besonders bei großen Datenmengen.


FAQ: Häufige Fragen

1. Wie kann ich die Summe einer nicht zusammenhängenden Zelle berechnen?
Du kannst Union verwenden, um nicht zusammenhängende Zellen zu summieren. Beispiel:

Dim rng As Range
Set rng = Union(Sheets("Tabelle1").Range("B2"), Sheets("Tabelle1").Range("B10"))
summeWert = Application.WorksheetFunction.Sum(rng)

2. Kann ich die Summe in eine andere Arbeitsmappe schreiben?
Ja, du kannst die Summe in eine andere Arbeitsmappe schreiben, indem du die vollständige Referenz der Arbeitsmappe angibst, z.B. Workbooks("AndereMappe.xlsx").Sheets("Tabelle1").Cells(1, 1).Value.

3. Wie kann ich die Summe nach Kriterien berechnen?
Verwende die SUMIF-Funktion in VBA, um die Summe nach bestimmten Kriterien zu berechnen:

summeWert = Application.WorksheetFunction.SumIf(Sheets("Tabelle1").Range("A2:A65000"), "Kriterium", Sheets("Tabelle1").Range("B2:B65000"))

Diese Antworten sollten dir helfen, effizienter mit VBA zu arbeiten und die Summe in Excel zu berechnen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige