Датум формата ВБА | Како променити формат датума у ​​ВБА коду?

Екцел ВБА формат датума

До форматирајте датум у ВБА користимо саму уграђену функцију ФОРМАТ, она узима улаз као формат датума и враћа жељени формат, аргументи потребни за ову функцију су сам израз и врста формата.

Форматирање датума и времена су осетљиве ствари у Екцелу, а иста ствар се односи и на ВБА. Подразумевани датум и време заснивају се на системском датуму на којем радимо, а који се могу разликовати од система до система. У овом чланку ћемо вам показати различите технике форматирања датума помоћу ВБА кодова.

Да бисмо променили формат датума помоћу ВБА кодирања, морамо бити свесни шта су формати датума и какав је њихов утицај на датум.

Табела у наставку приказује различито форматирање датума и њихове кодове.

Дакле, ако имате на уму да горњи графикон форматирање датума помоћу ВБА кодирања уопште није тежак задатак.

Како променити формат датума у ​​ВБА?

Испод су примери екцел формата датума ВБА.

Овај ВБА формат датума Екцел образац можете преузети овде - ВБА формат датума Екцел образац

Пример # 1

На пример, имамо исти датум у више ћелија радног листа као што је приказано доле.

Сада ћемо применити различите формате датума за исти датум да бисмо видели утицај на различите кодове формата датума.

Прво копирајте исте податке и у следећу колону да бисте видели утицај.

За први датум, тј. Ћелију А1, применићемо „ДД-ММ-ГГГГ“ формат.

Прво у коду, треба да изаберемо ћелију помоћу ДОМЕТ објект.

Шифра:

 Суб Датум_Формат_Пример1 () Опсег ("А1") Крај Суб 

Пошто мењамо формат датума ћелије, морамо да приступимо „Формат броја”Својство објекта РАНГЕ.

Шифра:

 Суб Дате_Формат_Екампле1 () Опсег ("А1"). НумберФормат Енд Суб 

Након приступа „Формат броја”Морамо поставити формат броја стављањем знака једнакости и применити код формата у двоструким наводницима.

Шифра:

 Суб Дате_Формат_Екампле1 () Распон ("А1"). НумберФормат = "дд-мм-иии" 'Ово ће променити датум на "23-10-2019" Енд Суб 

Када извршимо овај код, он ће применити формат броја на ћелију А1 као "ДД-ММ-ГГГ”.

Излаз:

Пример # 2

Слично томе, применио сам различите кодове форматирања и за друге ћелије, а доле је ВБА код за вас.

Шифра:

 Суб Дате_Формат_Екампле2 () опсег ("А1"). НумберФормат = "дд-мм-иии" 'Овим ћете променити датум у "23-10-2019" опсег ("А2"). НумберФормат = "ддд-мм-иии" 'Ово ће променити датум у опсег „Сре-10-2019“ („А3“). НумберФормат = "дддд-мм-иии"' Ово ће променити датум у опсег „Среда-10-2019“ („А4“) .НумберФормат = "дд-ммм-иии" 'Овим ћете променити датум у опсег "23. октобра 2019" ("А5"). НумберФормат = "дд-мммм-иии"' Овим ћете променити датум у "23- Октобар-2019 "Опсег (" А6 "). НумберФормат =" дд-мм-ии "'Овим ћете променити датум у" 23-10-19 "Распон (" А7 "). НумберФормат =" ддд ммм ииии "' Ово ће променити датум у опсег „Сре Окт 2019“ („А8“). НумберФормат = "дддд мммм ииии" 'Ово ће променити датум у „Среда Октобар 2019“ Крај Суб 

Резултат овог кода биће следећи.

Излаз:

Промените формат датума помоћу функције ФОРМАТ

У ВБА имамо функцију под називом ФОРМАТ која се може користити за примену жељеног формата на ћелију.

Само треба да одредимо која је вредност за „Израз“ и сходно томе применимо „Формат“.

Пример потражите у доњем коду.

Шифра:

 Суб Дате_Формат_Екампле3 () Затамни МиВал као варијанту МиВал = 43586 МсгБок формат (МиВал, "ДД-ММ-ИИИИ") Крај Суб 

У горњем коду дефинисао сам променљиву као варијанту (која може да садржи било коју вредност).

Шифра:

 Затамни МиВал као варијанту 

Следеће за ову променљиву доделио сам вредност као 43586.

Шифра:

МиВал = 43586

Следеће у оквиру за поруку приказао сам резултат променљиве, али пре него што покажемо резултат користили смо „ФОРМАТ”Функција за форматирање вредности променљиве“МиВал“А формат је„ДД-ММ-ГГГГ”.

Шифра:

МсгБок формат (МиВал, „ДД-ММ-ГГГ“)

Ок, покренимо код и погледајте резултат у оквиру за поруке у ВБА.

Излаз:

Као што видите горе, резултат се приказује као „01-05-2019”.

Сада се сигурно питате да ли смо дали серијски број, али резултат се приказује као датум. То је зато што Екцел складишти датум као серијски број, па је вредност 43586 једнака датуму „01-05-2019“, а ако број повећате за 1, тј. 43587, датум ће бити „02-05-2019“.

Шифра:

 Суб Дате_Формат_Екампле3 () Затамни МиВал као варијанту МиВал = 43586 МсгБок формат (МиВал, "ДД-ММ-ИИИ") Крај Суб 

Ствари које треба запамтити

  • Подразумевани датум вашег система примењиваће се и на ваш Екцел.
  • Својство Формат броја може се користити за промену формата датума у ​​ВБА.
  • Помоћу функције ФОРМАТ можемо променити формат датума.
  • Екцел чува датум као серијски број и ако примените формат датума, он ће се приказати у складу с тим.