Номер на формата на VBA - Как да форматирам числа с VBA NumberFormat?

Функцията за форматиране във VBA се използва за форматиране на дадените стойности в желания формат, тази функция има основно два задължителни аргумента, единият е входът, който се приема под формата на низ, а вторият аргумент е типът формат, който искаме да използваме например, ако използваме Формат (.99, ”Процент”), това ще ни даде резултата като 99%.

Форматиране на номер във VBA Excel

VBA изпреварва обикновените функции на Excel. VBA има много от своите вградени функции, точно както имаме над 500 операции в работния лист. Една такава формула във VBA е „Формат номер“.

Да, добре сте го чули. Имаме функция, наречена „FormatNumber“ във VBA. В тази статия ще направим пълна обиколка на тази функция изключително.

Как да форматирам числа с VBA NumberFormat?

Както казва самото име на функцията, тя ще форматира даденото число според инструкциите за форматиране, дадени от потребителя.

Форматирането на числа не е нищо друго освен добавяне на десетични точки, заграждане на отрицателни числа в скоби, показване на водещи нули за десетични стойности и др. Използвайки функцията VBA FormatNumber , можем да приложим стила на форматиране към числата, с които работим. По-долу е синтаксисът на функцията

  • Израз: Това не е нищо друго освен числото, което трябва да форматираме.
  • Числови цифри след десетични: Колко цифри искате за десетичната позиция за дясната страна на числото.
  • Включете водеща цифра: Водещата цифра не е нищо друго освен цифри, преди числото да започне. Това е приложимо за стойности по-малки от 1, но по-големи от -1.
    • Ако искате да покажете нула преди десетичната стойност, можете да предадете аргумента като TRUE или -1 и резултатът ще бъде. „0,55“
    • Ако не искате да показвате нула преди десетичната стойност, можете да предадете аргумента като FALSE или 0 и резултатът ще бъде „.55.“
    • По подразбиране стойността ще бъде -2, т.е. регионални компютърни настройки.
  • Използвайте родители за отрицателни числа: Ако искате да покажете отрицателните числа в скоби, можете да предадете аргумента като TRUE или -1 и резултатът ще бъде. „(255)“
    • Ако искате да покажете отрицателните числа без скоби, можете да предадете аргумента като FALSE или 0 и резултатът ще бъде. „-255.“
  • Групови цифри: Независимо дали искате да добавите хиляда разделители или не. Ако да, аргументът е TRUE или -1. Ако не, аргументът е FALSE или 0. По подразбиране стойността е -2, т.е. равна на регионалните настройки на компютъра.

Примери за функция на Excel VBA FormatNumber

Ще видим практическите примери за функцията Excel VBA Format Number. Ще изпълняваме всеки аргумент поотделно.

За тази цел създайте името на макроса и декларирайте една от променливите като низ. Трябва да отчетем променливата като низ, тъй като резултатът, даден от функцията VBA FormatNumber, е само като String.

Код:

Sub Format_Number_Example1 () Dim MyNum As String End Sub

Пример # 1 - Добавяне на десетични точки пред числото

Стъпка # 1 - Да приемем, че сме работили с числото 25000 и трябва да го форматираме и да добавим десетични точки отдясно на числото. Задайте стойност на нашата променлива.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (End Sub

Стъпка 2 - Първо е израз, т.е. числото, което трябва да форматираме, така че номерът ни е 25000.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, End Sub

Стъпка # 3 - Следва колко цифри трябва да добавим, т.е. 2 числа.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2) End Sub

Стъпка # 4 - Покажете стойността на променливата в полето за съобщения на VBA.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2) MsgBox MyNum End Sub

Стъпка # 5 - Резултатът от този макрос е такъв.

Вдясно от числото можем да видим две десетични знаци.

Пример # 2 - Номер на групата, т.е. Хиляди разделители

За същия номер можем да добавим или изтрием хиляда разделители. Ако искаме да покажем хиляда разделители, трябва да изберем vbTrue за последния аргумент.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2,,, vbTrue) MsgBox MyNum End Sub

Това ще хвърли резултата по този начин.

Сега, ако изберете vbFalse, тогава няма да получим хиляда разделители.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (25000, 2,,, vbFalse) MsgBox MyNum End Sub

Резултатът от този код е този.

Ако избера vbUseDefault, получаваме резултата според системната настройка. По-долу е резултатът от това.

Така че моята системна настройка има хиляди разделители по подразбиране.

Пример # 3 - Приложете скоби за отрицателни числа

Ако имаме вредно число, можем да покажем отрицателното число в скоби. Трябва да изберем vbTrue под „Използване на родители за отрицателни числа“.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (-25000, 2,, vbTrue) MsgBox MyNum End Sub

Сега резултатът е такъв.

Ако изберем vbFalse, ще получим отрицателно число със знак минус.

Код:

Sub Format_Number_Example1 () Dim MyNum As String MyNum = FormatNumber (-25000, 2,, vbFalse) MsgBox MyNum End Sub

Сега резултатът е такъв.

Интересни статии...