Přejít na hlavní obsah

Sum VBA Excel: popis, syntaxe a příklady použití

  • Apolena Šťastná
  • Rady

Microsoft Excel je výkonný nástroj pro automatizaci a usnadnění práce s daty. Jednou z nejoblíbenějších funkcí v Excelu je součet čísel. Vestavěná funkce SUM vám umožňuje sčítat hodnoty různých buněk, ale někdy je nutné provést sčítání pomocí VBA (Visual Basic for Applications).

VBA Excel poskytuje široké možnosti pro práci s daty a automatizaci procesů. Chcete-li provést součet pomocí VBA, musíte použít metodu Range.Sum. Syntaxe této metody je následující: Range.Sum(Arg1, Arg2. ).

Jako argumenty metoda Range.Sum přijímá rozsahy buněk, které je třeba složit. Argumenty lze nastavit explicitně nebo pomocí proměnných. Například pro sčítání hodnot v rozsahu A1: B5 je třeba zapsat: Range("A1:B5").Sum.

Kromě základního množství nabízí VBA Excel i další funkce a metody pro práci s daty. Lze použít například metodu WorksheetFunction.Sum, který vám umožní provést součet pomocí vestavěné funkce Sum Excel. K provedení sčítání s určitými podmínkami lze také použít podmíněné operátory a cykly.

Popis sum VBA Excel

Syntaxe funkce Sum je následující:

SyntaxePopis
Sum (hodnota 1, hodnota 2,. )Umožňuje vypočítat Součet daných hodnot.
Sum (rozsah)Umožňuje vypočítat součet hodnot v uvedeném rozsahu buněk.

Příklad použití funkce Sum:

Sub SumExample()Dim rng As RangeSet rng = Range("A1:A5")Dim sumValue As DoublesumValue = Application.WorksheetFunction.Sum(rng)MsgBox "Сумма значений в диапазоне A1:A5: " & sumValueEnd Sub

V tomto příkladu definujeme rozsah buněk A1:A5 v proměnné rng. Poté použijeme funkci Sum k výpočtu součtu hodnot v tomto rozsahu a přiřadíme výsledek proměnné sumValue. Nakonec zobrazíme zprávu s výsledkem pomocí MsgBox.

Funkce Sum lze také použít hned pro několik rozsahů buněk a / nebo jednotlivých hodnot. Například:

Dim sumValue As DoublesumValue = Application.WorksheetFunction.Sum(Range("A1:A5"), Range("C1:C5"), 10, 20)

V tomto příkladu vypočítáme součet hodnot v rozsahu A1:A5, C1: C5 a také přidáme dvě samostatné hodnoty 10 a 20.

Funkce Sum v Excelu VBA tedy umožňuje vypočítat součet hodnot v uvedených rozsahech buněk nebo jednotlivých hodnotách, což může být užitečné při automatizaci úloh zpracování dat v Excelu.

Syntaxe sum VBA Excel

Funkce Sum VBA Excel se používá k získání součtu čísel v rozsahu buněk.

Syntaxe funkce Sum VBA Excel:

FunkcePopis
Application.WorksheetFunction.Sum(range)Vrací součet čísel v uvedeném rozsahu buněk
ParametrPopis
rangePovinný parametr. Rozsah buněk, ve kterých je třeba najít součet čísel

Příklad použití funkce Sum VBA Excel:

Řekněme, že máme následující rozsah buněk A1:A5:

A
10
20
30
40
50

Pomocí funkce Sum VBA Excel získáte součet čísel v tomto rozsahu:

Dim rng As RangeDim sumResult As DoubleSet rng = Range("A1:A5")sumResult = Application.WorksheetFunction.Sum(rng)MsgBox "Сумма чисел в диапазоне A1:A5: " & sumResult

Při provádění tohoto kódu se zobrazí zpráva s součtem čísel v rozsahu A1:A5:

Сумма чисел в диапазоне A1:A5: 150

Můžete tedy použít funkci SUM VBA Excel k získání součtu čísel v daném rozsahu buněk.

Příklady použití sum VBA Excel

Příklad 1:

Spočítáme součet všech hodnot v rozmezí od A1 do A5:

Dim sumResult As DoublesumResult = Application.WorksheetFunction.Sum(Range("A1:A5"))MsgBox "Сумма: " & sumResult

Příklad 2:

Spočítáme součet všech hodnot ve sloupci B počínaje druhým řádkem:

Dim lastRow As LonglastRow = Cells(Rows.Count, "B").End(xlUp).RowDim sumResult As DoublesumResult = Application.WorksheetFunction.Sum(Range("B2:B" & lastRow))MsgBox "Сумма: " & sumResult

Příklad 3:

Vypočítáme součet hodnot v rozsahu pomocí podmínky:

Dim sumResult As DoublesumResult = Application.WorksheetFunction.SumIf(Range("A1:A5"), ">3")MsgBox "Сумма: " & sumResult

Příklad 4:

Vypočítáme součet hodnot v rozsahu pomocí podmínky a jiného rozsahu pro srovnání:

Dim sumResult As DoublesumResult = Application.WorksheetFunction.SumIf(Range("A1:A5"), ">3", Range("B1:B5"))MsgBox "Сумма: " & sumResult

Příklad 5:

Vypočítáme součet hodnot v rozsahu pomocí několika podmínek:

Dim sumResult As DoublesumResult = Application.WorksheetFunction.SumIfs(Range("A1:A5"), Range("B1:B5"), ">3", Range("C1:C5"), "<>0")MsgBox "Сумма: " & sumResult

Funkce a metody sum VBA Excel

Funkce a metody sum VBA Excel umožňují různé operace sčítání čísel v buňkách tabulky. Mohou být použity k automatizaci výpočtů a analýzy dat.

Jednou z nejčastěji používaných metod je metoda Sum, který umožňuje složit hodnoty buněk v uvedeném rozsahu. Syntaxe metody je následující:

Tento kód sečte hodnoty buněk v rozmezí od A1 do A10 a vrátí celkový součet. Výsledek lze uložit do proměnné nebo zobrazit na obrazovce.

Pro složitější výpočty lze použít funkci WorksheetFunction.Sum. Umožňuje složit hodnoty buněk v uvedeném rozsahu a vrátit výsledek. Syntaxe funkce je následující:

Tento kód provede stejnou operaci jako předchozí příklad, ale pomocí funkce Sum. Tento přístup je vhodný, když je nutné volat funkce aplikace Excel z kódu VBA.

Kromě metody a funkce Sum existují další funkce a metody, které vám umožňují sčítat čísla v buňkách aplikace Excel. Například metody SumIf a SumIfs umožňují sčítat pouze hodnoty, které splňují určité podmínky.

Bez ohledu na zvolenou metodu nebo funkci poskytuje sum VBA Excel praktické možnosti pro práci s číselnými daty v buňkách tabulky. Pomocí nich lze provádět složité výpočty a analyzovat data s minimálním úsilím.