Номер формату Excel VBA

VBA поставляється з вбудованою функцією для форматування чисел. Назва вбудованої функції - "Номер формату". Ця функція формулює конкретне число у форматі, необхідному користувачеві.
Перш ніж ми продовжимо, давайте спочатку розберемося, що таке форматування чисел. Форматування чисел в основному означає, що конкретне число повинно бути показане певним чином. Наприклад, якщо ви хочете побачити певне число через два десяткових знаки (150, 55) або ви хочете побачити те саме число у вигляді десяткової точки (150). Це лише приклади. В основному, ми можемо класифікувати ці форматування чисел у чотири категорії.

  • Десяткові бали
  • Негативні цифри в дужках
  • Провідні цифри
  • Згрупуйте цифри

Ми будемо вивчати всі форматування у VBA за допомогою прикладів. Але спочатку давайте подивимось на синтаксис функції VBA для номера формату.

Отже, як ви можете бачити синтаксис функції VBA для номера формату на наведеному вище скріншоті, давайте перервемо цю функцію та зрозуміємо кожну частину функції.

  1. Вираз: Як ви бачите, перша частина функції - це вираз, який є не що інше, як число, яке ми хочемо відформатувати.
  2. Числова цифра після десяткової: Друга частина функції запитує кількість цифр числа, яке ви хочете побачити після десяткової крапки.
  3. Провідна цифра: Це корисно, коли число становить від -1 до 1, що означає, коли число більше -1 і менше 1. Наприклад 0, 25.

Отже, якщо ви хочете побачити нульове значення перед десятковою точкою, вам потрібно вставити аргумент у функцію як TRUE або -1. Результат складе 0, 55.

Але якщо ви введете значення в аргумент як FALSE або 0, результат буде .55.

  1. Використовувати батьківський номер для від'ємних чисел : Ця частина використовується для негативних чисел. Якщо ви хочете побачити відмінні числа в дужці, то вам слід навести аргумент як TRUE або -1, і результат буде (156). Але якщо ви подаєте аргумент як FALSE або 0, результат буде -156.
  2. Групові цифри : Це остання частина функції, яка використовується для тисяч роздільників. Отже, якщо ви хочете побачити числа з роздільником тисячі, ви повинні навести аргумент як ІСТИНА або -1, а результат буде 52 000. Але якщо ви наводите той же аргумент, як FALSE або 0, результат буде приблизно 52000.

Як відформатувати номер за допомогою коду VBA?

Тепер, коли ви розумієте різні форми форматування чисел та вбудовану функцію VBA у форматі чисел, ми можемо продовжити та побачити, як ми можемо це використовувати за допомогою прикладів.

Ви можете завантажити цей шаблон формату VBA Шаблон Excel тут - Номер формату VBA Шаблон Excel

Перш ніж перейти до прикладів, виконайте наведені нижче основні кроки, якщо ви новачок у макросі VBA. Ви можете вставити наведені нижче коди в модуль VBA.

Крок 1. Створіть ім’я макроса, який є першим рядком у коді, як ви бачите на скріншоті.

Крок 2: Оголосіть одну зі змінних як String, оскільки результат, який дає функція номера формату VBA, є String.

Код:

 Sub Format_Number_Example1 () Dim MyNum As String End Sub 

Тепер ми можемо продовжувати свої приклади.

Десяткові бали - приклад №1

Припустимо, ми працюємо з числом 56456, і ви хочете побачити два числа після коми.

Крок 1. У код можна додати вбудовану функцію VBA, як показано нижче.

Mynum = Формат число (

Крок 2. Як ви знаєте, перший крок функції - це вираз, який є не що інше, як число, яке ви хочете відформатувати. 56456 в нашому випадку.

Mynum = Формат число (56456,

Крок 3: Наступний крок - Numdigitafterdecimal, що є не що інше, як кількість цифр, яку ви хочете побачити після десяткової крапки, яка у нашому випадку 2.

Код:

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

Крок 4 : Наступний крок - показати номер у вікні повідомлення. VBA має вбудовану функцію для відображення значення у вікні повідомлення, що є MSGBOX.

Тому вам просто потрібно вставити наведений нижче код після вставки функції Format Format для MyNum.

Код:

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

Як ви бачите, останній рядок у коді - End Sub, що означає код VBA для макросів, що закінчуються після цього.

Крок 6. Коли кодування номера формату закінчується, ви можете запустити макрос, і після запуску макросу ви побачите нижченаведений результат.

Тисяча роздільник - приклад №2

Тепер припустимо, з того ж прикладу нам потрібно показати те саме число 56456 з тисячами роздільників. У такому випадку нам потрібно навести останній аргумент як "vbTrue", як показано на скріншоті нижче.

Код:

Підформат_Number_Example2 ()

Дім MyNum як рядок

MyNum = FormatNumber (56456, 2,,, vbTrue)

MsgBox MyNum

Кінець Під

Запустивши макрос, ви зможете побачити нижченаведений результат.

Якщо ви вибрали "vbFalse" в якості останнього аргументу, число не відображатиметься як роздільник тисяч.

Показувати негативний номер у дужці - приклад №3

Припустимо, той самий номер 56456 у наведеному вище прикладі є негативним, і вам потрібно показати в дужці негативні числа, тоді четвертим аргументом у функції має бути "vbTrue", як показано на нижньому скріншоті.

Код:

 Sub Format_Number_Example3 () Dim MyNum As String MyNum = FormatNumber (-56456, 2,, vbTrue, vbTrue) MsgBox MyNum End Sub 

Як ви бачите, четвертий та п'ятий аргумент у коді - це «vbTrue», що означає форматування негативного числа (четвертий аргумент) та форматування для тисяч роздільників (п'ятий аргумент) істинні. Таким чином, ви побачите від'ємне число в дужці та з Тисячами роздільниками, як показано на знімку екрана нижче.

Форматування для числа від -1 до 1 - приклад №4

Припустимо, число 0, 567, що знаходиться між -1 і 1, тоді у вас є два варіанти форматування числа. Перший варіант - показати нуль перед десятковою точкою або не показувати нуль перед десятковою комою.

Якщо ви вибрали варіант відображення нуля перед десятковою точкою, вам слід надати третій аргумент функції «vbTrue», як показано на нижньому екрані екрана.

Код:

 Sub Format_Number_Example4 () Dim MyNum As String MyNum = FormatNumber (0.567, 2, vbTrue, vbTrue, vbTrue) MsgBox MyNum End Sub 

Ви зможете побачити нижченаведений результат після запуску макрокоду.

Як ви бачите, результат показує лише дві цифри після десяткової крапки, оскільки ми вказали лише 2 як другий аргумент у функції.

Якщо ви вибрали третій аргумент як "vbFalse", як показано на скріншоті нижче.

Код:

 Sub Format_Number_Example5 () Dim MyNum As String MyNum = FormatNumber (0.567, 2, vbFalse, vbTrue, vbTrue) MsgBox MyNum End Sub 

Тоді ви не побачите нуль перед десятковою комою, як показано на скріншоті нижче.

Що потрібно пам’ятати

  • Функція VBA FormatNumber має 5 аргументів, тому переконайтеся, що ви вказуєте правильні аргументи в порядку функції. Треба слідувати порядку функціонування, іншого виходу немає.
  • Якщо ви збережете будь-який з аргументів як Пустий, він автоматично розгляне варіант VBA за замовчуванням.
  • Будьте обережні з аргументами vbTrue і vbFalse для останніх трьох аргументів для форматування чисел.
  • Для першого аргументу, який є виразом, ви можете також надати посилання на комірку на аркуші excel замість будь-якого числа.

Рекомендовані статті

Це посібник із номеру формату VBA. Тут ми обговорюємо, як відформатувати номери в Excel за допомогою коду VBA разом із практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Як користуватися функцією VBA TRIM?
  2. Масиви VBA | Повний підручник
  3. Як користуватися VBA Select Case?
  4. Функція пошуку VBA Excel

Категорія: