Data formatului VBA

Acest tutorial va arăta cum să formatați datele folosind VBA.

Formatează datele în VBA

Există două metode pentru formatarea datelor folosind VBA.

  1. Proprietatea NumberFormat a celulelor / intervalelor - Pentru a formata datele stocate în celule
  2. Funcția Format VBA - Pentru a formata date în VBA (ex. Variabile)

NumberFormat - Date

Formatul de număr implicit al unei celule din Excel este General. Puteți afișa valori ca numere, text, date, procente sau monede schimbând formatul numerelor. Proprietatea NumberFormat poate fi utilizată în VBA pentru a seta formatul numeric al datelor într-o celulă sau un interval.

Notă: Pentru a vedea diferitele formate de date standard disponibile în Excel, accesați Acasă> Număr și veți vedea opțiuni precum Data scurtă, Data lungă și Ora.


Data scurtă

Opțiunea de formatare a numărului scurt de dată afișează data într-un format numeric scurt.

Următorul cod va seta proprietatea .NumberFormat a celulei A1 la Scurtă dată:

1 Gama ("A1"). NumberFormat = "mm / zz / aaaa"

Data lungă

Formatarea numărului de dată lungă afișează data într-un format scris mai lung. Următorul cod va seta proprietatea .NumberFormat a celulei A1 la dată lungă:

1 Gama ("A1"). NumberFormat = "dddd, mmmm dd, aaaa"

Date personalizate

Pentru a vedea codurile de formatare a numărului personalizat pe care le puteți utiliza în VBA pentru a formata datele, accesați Acasă> Număr și faceți clic pe Lansatorul casetei de dialog. Selectați fila Număr și alegeți Personalizat.

Puteți selecta formatele personalizate încorporate pentru data dvs. sau puteți crea propriile formate de dată definite de utilizator. Următorul cod va seta proprietatea .NumberFormat a celulei A1 la un format de dată personalizat încorporat:

1 Gama ("A1"). NumberFormat = "mmm-yy"

Rezultatul este:

Următorul cod va seta proprietatea .NumberFormat a celulei A1 la un format de dată personalizat definit de utilizator:

1 Gama ("A1"). NumberFormat = "dddd-dd-mmm-yy"

Rezultatul este:

Prin examinarea exemplelor pre-construite din Excel, puteți afla cum ar trebui introduse NumberFormats. Pentru mai multe informații, citiți documentația Microsoft privind formatele numerice pentru date.

Funcția de format VBA

După cum s-a menționat mai sus, metoda NumberFormat este adecvată pentru setarea formatului numeric al datelor stocate în celulele Excel. În VBA, puteți utiliza funcția Format pentru a converti datele în șiruri cu anumite formatări de date.

Ați utiliza următoarea sintaxă pentru formatarea datelor:

Format (String_Representation, NumberFormatCode) unde:

String_Representation - șirul de text care reprezintă data.

NumberFormatCode - codul formatului numeric care specifică modul în care ar trebui afișată data.

Următorul cod arată cum să formatați o reprezentare de șir de text a unei date ca format de dată lung:

1 Format MsgBox („01.01.2010”, „dddd, mmmm dd, aaaa”)

Rezultatul este:

Observați că funcția Format utilizează aceeași sintaxă de formatare a datei ca NumberFormat de mai sus.

Următorul cod arată cum să formatați o reprezentare a șirului de text al unei date ca format mediu de dată:

1 Format MsgBox („09 octombrie 2012”, „Data medie”)

Rezultatul este:

Următorul cod arată cum să formatați o reprezentare de șir de text a unei date ca format definit de utilizator:

1 Format MsgBox („09 octombrie 2012”, „dddd: dd / mm / aa”)

VBA Custom Format Builder

Suplimentul nostru VBA: AutoMacro conține un Generator de formate personalizate pentru Editorul VBA. Acest lucru vă permite să setați formate personalizate și să previzualizați imediat rezultatul pentru valoarea dorită:

Suplimentul VBA conține numeroase alte „Generatoare de coduri”, o bibliotecă extinsă de coduri și un sortiment de alte instrumente de codificare. Este complementul suprem pentru oricine are în vedere programarea VBA!

Format VBA Data în acces

Funcția VBA Format Data funcționează exact la fel în Access VBA ca în Excel VBA.

12345678910 Funcția GetDateFilter () Ca șir'creați un șir pentru a obține informații din 2 câmpuri de date dintr-un formular din AccessDim strDateField As StringDacă IsNull (Me.txtSDate) = False atunciDacă IsNull (Me.txtEDate) = Adevărat atunci Me.txtEDate = Me.txtSDateDacă strDateField2 = "" AtunciGetDateFilter = strDateField & "Between #" & Format (Me.txtSDate, "mm / dd / aaaa") & "# Și #" & Format (Me.txtEDate, "mm / dd / aaaa") & "#"End IfEnd IfFuncția de sfârșit

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave