Функція Format (для користувачів Visual Basic 6
Оновлено: Листопад 2007
У версії Visual Basic 2008 функція Format тепер відповідає специфікації загальномовного середовища виконання (CLR) форматування даних. Додаткові відомості про форматування даних у .NET Framework див. у розділі Типи форматування.
Наступні розділи присвячені детальному розгляду змін у Visual Basic 2008, що стосуються форматів користувача дати і часу, числових і рядкових форматів.
Користувальницькі формати дати та часу
Visual Basic 6.0
Для відображення дати в повному та короткому форматах у Visual Basic 6.0 використовуються специфікатори формату "ddddd" або "dddddd". Специфікатори DayOfWeek ("w") та WeekOfYear ("ww") відображають день, який прийнято вважати першим днем тижня, та тиждень, який вважається першим тижнем року. Рядкова літера "m" відображає місяць як число без провідного нуля. Специфікатор Quarter (q) відображає квартал року як число від 1 до 4.
Для відображення хвилин у вигляді числа з провідними нулями або без них використовуються специфікатори формату Nn або N відповідно. Знаки "Hh" відображають годину у вигляді числа з провідним нулем, а "tttttt" - повний час. Щоб відобразити поряд зі значенням години великі або малі літери "A" або "P", що вказують час до або після полудня, використовується один з наступних специфікаторів: "AM/PM", "am/pm", "A/P", " a/p" або "AMPM".
Специфікатор Short Date/Time ("c") відображає дату та час у форматі "ddddd ttttt".
Visual Basic 2005
У Visual Basic 2008 специфікатори "ddddd" та "dddddd" поводяться так само, як і специфікатор "dddd", відображаючи повну назву дня. Вони не відображають короткий та повний формати дати. Режими DayOfWeek ("w") та WeekOfYear ("ww") непідтримуються. Замість них можна використовувати функцію DatePart, як показано у наведеному нижче прикладі.
Специфікатори "M" та "m" мають різне значення, тому вони враховують регістр. Верхній регістр ("M") використовується тільки для позначення місяця в області дати формату дати та часу, а малі літери "m" — лише для хвилин в області часу.
Специфікатор Quarter не підтримується. Замість них можна використовувати функцію DatePart, як показано у наведеному нижче прикладі.
Для відображення хвилин у вигляді числа з провідними нулями або без них використовують специфікатори "m" або "mm", відповідно. Формат "ttttt" більше не підтримується. Специфікатори "H" та "h" мають різне значення, тому вони враховують регістр. Верхній регістр "H" використовується лише для 24-годинного формату, а нижній регістр "h" - для 12-годинного формату. Формати AM/PM замінені "t" та "tt".
Специфікатор c використовується для формату валюти. Для форматування дати та часу використовуйте "g" як специфікатор короткого формату дати/часу та "G" як специфікатор загального формату дати/часу. Обидва специфікатори, "g" та "G", використовують поточне налаштування мовного стандарту для визначення відповідних форматів дати та часу.
Чисельні формати користувача
Visual Basic 6.0
У Visual Basic 6.0 функція Format за потреби перед форматуванням перетворює рядки на числа. Функція Format відображає завершальну десяткову точку, якщо відсутня дрібна частина.
Visual Basic 6.0 підтримує чотири розділи у рядку форматування. Вони поділяються точками з комою (;) і визначають форматування позитивних, негативних, нульових та порожніх значень відповідно. Негативні числа з порожнім негативним розділом у рядку форматуваннявідображаються як порожній рядок.
Форматування наукового подання підтримує заповнювачі "0" та "#", що йдуть за експонентою.
Visual Basic 2005
У версії Visual Basic 2008 функція Format не перетворює рядки до форматування. У першому аргументі слід передавати число, а чи не рядок. У наступному прикладі перший рядок коду не дає очікуваного результату Visual Basic 2008, а другий рядок дає очікуваний результат.
Завершальні десяткові точки не відображаються, як показано в наведеному нижче прикладі.
У Visual Basic 2008 підтримуються три розділи в рядку форматування для позитивних, негативних і нульових значень. Якщо ненульова величина округляється до нуля відповідно до першого або другого розділу форматування, вона форматується відповідно до вказівок третього розділу. Негативні числа з порожнім розділом форматування негативних чисел відображаються як знак мінус, як показано в наступному прикладі.
Форматування наукового подання підтримує лише заповнювач "0" для цифр; Заповнювач "#" не підтримується. У наступному прикладі перший рядок коду не дає очікуваного результату Visual Basic 2008, а другий рядок дає очікуваний результат.
Формат рядка
Visual Basic 6.0
У Visual Basic 6.0 можна створювати вирази для рядків користувача формату зі специфікаторами @, &, і !.
Visual Basic 2005
У версії Visual Basic 2008 припинено підтримку виразів для рядків формату, тому специфікатори @, &, і ! немає сенсу і більше не підтримуються.