Přejít na hlavní obsah

VBA Excel: zaokrouhlení na dvě desetinná místa

  • Igor Svobodová
  • Recenze

Microsoft Excel je výkonný nástroj pro práci s číselnými daty, který nabízí široké možnosti zpracování informací. Jednou z důležitých otázek při práci s čísly je zaokrouhlení na určitý počet desetinných míst. V tomto článku se podíváme na to, jak používat programovací jazyk VBA (Visual Basic for Applications) v Excelu k provedení tohoto úkolu.

VBA je programovací jazyk určený speciálně pro automatizaci operací v Excelu. Pomocí VBA můžete vytvářet makra a vlastní funkce, abyste mohli provádět složité operace s daty, která nejsou k dispozici ve standardních funkcích aplikace Excel. Jedním z takových příkladů je zaokrouhlování čísel.

Pro zaokrouhlení čísla na dvě desetinná místa v aplikaci VBA Excel lze použít funkci Round. Přijímá dva argumenty: číslo, které je třeba zaokrouhlit, a počet desetinných míst, ke kterým je třeba zaokrouhlit. Například:

Dim myNumber As Double
myNumber = 3.14159
myNumber = Round(myNumber, 2)
MsgBox myNumber

V tomto příkladu číslo 3.14159 se zaokrouhlí na dvě desetinná místa a výsledek se zobrazí v okně zprávy pomocí funkce MsgBox. Výsledkem bude číslo 3.14. Všimněte si, že výsledek zaokrouhlení je uložen v proměnné myNumber, takže jej můžete použít pro další operace.

VBA Excel: zaokrouhlování reálných čísel

V jazyce VBA pro Excel existuje několik funkcí, které vám umožňují zaokrouhlit reálné číslo na určitý počet desetinných míst. To může být užitečné například při práci s finančními údaji nebo při výpočtu úroků.

K zaokrouhlení čísla na dvě desetinná místa lze použít funkci Round . Tato funkce má dva argumenty: číslo, které je třeba zaokrouhlit, a počet desetinných míst. Chcete-li například zaokrouhlit číslo 3.14159 na dvě desetinná místa, můžete použít následující kód:

Dim number As Doublenumber = 3.14159number = Round(number, 2)

Po provedení tohoto kódu bude proměnná number obsahovat hodnotu 3.14.

Pokud je nutné vždy zaokrouhlit číslo na větší stranu, můžete použít funkci RoundUp . Tato funkce také přijímá dva argumenty: číslo a počet desetinných míst. Zde je návod, jak zaokrouhlit číslo 3.14159 nahoru na dvě desetinná místa:

Dim number As Doublenumber = 3.14159number = WorksheetFunction.RoundUp(number, 2)

Po provedení tohoto kódu bude proměnná number obsahovat hodnotu 3.15.

Je-li nutné vždy zaokrouhlit číslo na menší stranu, můžete použít funkci RoundDown . Tato funkce také přijímá dva argumenty: číslo a počet desetinných míst. Zde je návod, jak zaokrouhlit číslo 3.14159 dolů na dvě desetinná místa:

Dim number As Doublenumber = 3.14159number = WorksheetFunction.RoundDown(number, 2)

Po provedení tohoto kódu bude proměnná number obsahovat hodnotu 3.14.

Excel má také funkci zaokrouhlení čísla podle pravidel matematiky, kde pokud je zlomková část čísla 0.5, zaokrouhluje se směrem k nejbližšímu sudému číslu. K tomu lze použít funkci Round s druhým argumentem rovným -1. Například:

Dim number As Doublenumber = 3.5number = WorksheetFunction.Round(number, -1)

Po provedení tohoto kódu bude proměnná number obsahovat hodnotu 4.0.

Použití těchto funkcí umožňuje snadné a rychlé zaokrouhlení reálných čísel v jazyce VBA pro Excel a získání požadovaného počtu desetinných míst.

Příklady kódu a tipy lze uvést v následující tabulce:

FunkcePopisPříklad kódu
RoundZaokrouhlení čísla na daný počet znaků za čárkou number = Round(number, 2)
RoundUpZaokrouhlení čísla nahoru na daný počet desetinných míst number = WorksheetFunction.RoundUp(number, 2)
RoundDownZaokrouhlení čísla dolů na daný počet desetinných míst number = WorksheetFunction.RoundDown(number, 2)
RoundZaokrouhlování čísel podle pravidel matematiky number = WorksheetFunction.Round(number, -1)