Функция за формат VBA

Този урок ще покаже как да използвате функцията за форматиране.

Функция за форматиране

Форматирайте номера с предварително зададени формати

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

12345678910111213141516171819202122232425262728293031 Подформат Пример_1 ()Формат на MsgBox (1234567.8) 'Резултатът е: 1234567.8„Форматът просто оставя номера такъв, какъвто еФормат на MsgBox (1234567.8, "Валута") "Резултатът е: $ 1 234 567, 80„Валутата използва настройките на системната валутаMsgBox Format (1234567.8, "Fixed") 'Резултатът е: 1234567.80„Поправено: Най -малко една цифра преди десетичната запетая и'използва системни настройки за десетичната частMsgBox Format (1234567.8, "Standard") 'Резултатът е: 1 234 567,80„Стандарт: Хиляди разделители и стандартна системаФормат на MsgBox (1234567.8, "Процент") 'Резултатът е: 123456780.00%„Процент, умножава по 100 с % и стандартна система.MsgBox Format (1234567.8, "Scientific") 'Резултатът е: 1.23E+06„Научна нотацияФормат на MsgBox (1234567.8, "Да/Не") 'Резултатът е: Да„Не, ако числото е нулаMsgBox Format (1234567.8, "True/False") 'Резултатът е: True„False, ако числото е равно на нулаMsgBox Format (1234567.8, "On/Off") 'Резултатът е: Включен„Изключено, ако числото е нулаEnd Sub

Форматирайте номера с дефинирани от потребителя формати

Функцията за форматиране може да преобразува число в низ, форматирани потребителски цифрови формати. 0 е заместител на цифра, който показва цифра или нула. # е заместител на цифри, който показва цифра или нищо. Точка (.) Е десетичен заместител, % е процентът заместител и запетая (,) е разделителят на хиляди. Текстът може да се добавя във формат с помощта на двойни кавички (“”) и може да се добави един знак, ако се използва след обратна наклонена черта (\).

1234567891011 Подформат Пример_2 ()Формат на MsgBox (7.8, "000.00") "Резултатът е: 007.80Формат на MsgBox (12347.8356, "000.00") "Резултатът е: 12347.84Формат на MsgBox (7.8, "###. ##") 'Резултатът е: 7.8Формат на MsgBox (12347.8356, "###. ##") 'Резултатът е: 12347.84Формат на MsgBox (7.8, "\ $. 00") 'Резултатът е: $ 7.80MsgBox формат (1237.835, "ABA0.00") 'Резултатът е: ABA1237.84Формат на MsgBox (12347.8356, "000.00%") 'Резултатът е: 1234783.56%Формат на MsgBox (12347.8356, " %000.00") "Резултатът е: %12347.84End Sub

Форматиране на номера в зависимост от стойностите

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

1234567 Подформат Пример_3 ()Формат на MsgBox (7.8, "000.00; (000.00); \ z \ e \ r \ o; нищо") "Резултатът е: 007.80Формат на MsgBox (-7.8, "000.00; (000.00); \ z \ e \ r \ o; нищо") "Резултатът е: (007.80)Формат на MsgBox (0, "000.00; (000.00); \ z \ e \ r \ o; нищо") "Резултатът е: нулаФормат на MsgBox (Null, "000.00; (000.00); \ z \ e \ r \ o; нищо") "Резултатът е: нищоEnd Sub

Форматиране на дати с предварително зададени формати

Функцията за форматиране може да форматира дати с различни предварително зададени формати. Тези формати са дълги, средни и кратки дати, както и дълги, средни и кратки срокове.

1234567891011121314 Подформат Пример_4 ()Dim DateEx като датаDateEx = #4/18/2020 7:35:56 PM #Формат на MsgBox (DateEx, "Обща дата") 'Резултатът е: 18.04.2020 19:35:56Формат на MsgBox (DateEx, "Дълга дата") Резултатът е: събота, 18 април 2022 г.MsgBox Format (DateEx, "Medium Date") Резултатът е: 18-Apr-20Формат на MsgBox (DateEx, "Кратка дата") Резултатът е: 18.04.2020MsgBox Format (DateEx, "Long Time") 'Резултатът е: 19:35:56 PMФормат на MsgBox (DateEx, "Средно време") Резултатът е: 19:35 чФормат на MsgBox (DateEx, "Кратко време") Резултатът е: 19:35End Sub

Форматиране на дати с потребителски формати

Функцията за форматиране може да форматира дати с дефинирани от потребителя формати. Символи като d, m, y, w, q могат да се използват за създаване на персонализирани формати за дата.

123456789101112131415161718192021222324 Подформат Пример_5 ()Dim DateEx като датаDateEx = #4/18/2020 7:35:56 PM #Формат на MsgBox (DateEx, "m/d/yy") 'Резултатът е: 18.04.2020Формат на MsgBox (DateEx, "mm-dd-yy") 'Резултатът е: 04-18-2020Формат на MsgBox (DateEx, "mmm-dd-yy") 'Резултатът е: април-18-2020Формат на MsgBox (DateEx, "mmmm-dd-yy") 'Резултатът е: април-18-2020Формат на MsgBox (DateEx, "mm-ddd-yy") 'Резултатът е: 04-Sat-2020Формат на MsgBox (DateEx, "mm-dddd-yy") 'Резултатът е: 04-събота-2020Формат на MsgBox (DateEx, "y")Резултатът е: 109„брой дни в годината 1-366Формат на MsgBox (DateEx, "ww")Резултатът е: 16„брой седмици в година 1-52Формат на MsgBox (DateEx, "q")„Резултатът е: 2тримесечие на година 1-4End Sub

Символи като h, n, s и am, pm комбинации могат да се използват за създаване на персонализирани формати за време.

123456789101112 Подформат Пример_6 ()Dim DateEx като датаDateEx = #4/18/2020 19:06:05 PM #Формат на MsgBox (DateEx, "h: n: s") 'Резултатът е: 19: 6: 5Формат на MsgBox (DateEx, "hh: nn: ss") 'Резултатът е: 19:06:05Формат на MsgBox (DateEx, "hh: nn: ss am/pm") "Резултатът е: 07:06:05 pmMsgBox Format (DateEx, "hh: nn: ss AM/PM") Резултатът е: 19:06:05Формат на MsgBox (DateEx, "hh: nn: ss a/p") 'Резултатът е: 07:06:05 pMsgBox Format (DateEx, "hh: nn: ss A/P") 'Резултатът е: 07:06:05 PEnd Sub

Формат за по -добра четливост

Функцията за форматиране може да форматира низове или числа за по -добра четливост. @ е заместител на знак, използван за показване на знак или интервал. & е заместител на знак, използван за показване на знак или нищо. ! може да се използва за използване на заместители на знаци отляво надясно и може да се използва за прилагане на малки или големи букви. Може да бъде полезно при форматиране на телефонни номера или други големи числа, без да се променя първоначалната стойност.

12345678910111213141516171819202122 Подформат Пример_7 ()Dim StrEx As StringStrEx = "ABCdef"Формат на MsgBox (StrEx, "-@@@-@@-@@") "Резултатът е:-AB-Cd-efФормат на MsgBox (StrEx, "-&&&-&&-&&") 'Резултатът е: -AB-Cd-ef'Започва отдясно наляво.Формат на MsgBox (StrEx, "-@@@-@@-@@-@@") "Резултатът е:--AB-Cd-efФормат на MsgBox (StrEx, "-&&&-&&-&&-&&") Резултатът е: --AB-Cd-ef'Започва отдясно наляво. Когато извън символите @ добавя интервали и & не добавя нищоФормат на MsgBox (StrEx, "!-@@@-@@-@@-@@") "Резултатът е: -ABC-de-f-Формат на MsgBox (StrEx, "!-&&&-&&-&&-&&") 'Резултатът е: -ABC-de-f„Започва отляво надясно поради!Формат на MsgBox (StrEx, ">") 'Резултатът е: ABCDEFФормат на MsgBox (StrEx, "<") 'Резултатът е: abcdefФормат на MsgBox (1234567890, "@@@-@@@-@@@@") "Резултатът е: 123-456-7890Формат на MsgBox (1234567890, "@@@@-@@@-@@@") "Резултатът е: 1234-567-890End Sub

Форматиране на модели в клетки на работен лист

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

Форматиране на модели с текстова формула

Функцията за форматиране може директно да промени формата на стойност в кода на VBA. Можем също така да използваме формулата на excel Text, за да получим същия резултат, използвайки WorksheetFunction.Text.

1234567891011 Подформат Пример_8 ()MsgBox формат (7.8, "000.00")'Резултатът е: 007.80MsgBox WorksheetFunction.Text (7.8, "000.00")'Резултатът е: 007.80MsgBox формат (7.8, "###. ##")Резултатът е: 7.8MsgBox WorksheetFunction.Text (7.8, "###. ##")Резултатът е: 7.8End Sub

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave