ez az oktatóanyag bemutatja, hogyan kell formázni a dátumokat a VBA használatával.
dátumok formázása a VBA-ban
kétféle módszer létezik a dátumok formázására a VBA használatával.
- a cellák / tartományok NumberFormat tulajdonsága – a cellákban tárolt dátumok formázása
- a VBA formátum funkció – a dátumok formázása VBA-ban (pl. változók)
NumberFormat-dátumok
az Excel cellájának alapértelmezett számformátuma Általános. Az értékeket számként, szövegként, dátumként, százalékként vagy pénznemként jelenítheti meg a Számformátum megváltoztatásával. A NumberFormat tulajdonság használható a VBA-ban a cellák vagy tartományok dátumainak számformátumának beállításához.
Megjegyzés: Az Excel-ben elérhető különböző szabványos dátumformátumok megtekintéséhez menjen a Home>számra, és olyan beállításokat láthat, mint a rövid dátum, a hosszú dátum és az idő.
rövid Dátum
a rövid dátumszám formázása opció rövid, numerikus formátumban jeleníti meg a dátumot.
a következő kód fogja beállítani a .Az A1 cella NumberFormat tulajdonsága a rövid dátumig:
1
|
tartomány (“A1”).NumberFormat = “HH/NN / ÉÉÉÉ”
|
hosszú Dátum
hosszú dátum szám formázása a dátumot hosszabb, írott formátumban jeleníti meg. A következő kód fogja beállítani a .Az A1 cella NumberFormat tulajdonsága a hosszú dátumig:
1
|
tartomány (“A1”).NumberFormat = “nndd, mmmm NN, ÉÉÉÉ”
|
egyéni dátumok
a VBA-ban a dátumok formázásához használható egyéni számformátum-kódok megtekintéséhez lépjen a Kezdőlap> szám elemre, majd kattintson a párbeszédpanelen indító. Válassza a szám fület, és válassza az Egyéni lehetőséget.
kiválaszthatja a dátumhoz tartozó egyedi beépített formátumokat, vagy létrehozhat saját, felhasználó által definiált dátumformátumokat. A következő kód fogja beállítani a .Az A1 cella numberformat tulajdonsága beépített egyéni dátumformátumra:
1
|
Tartomány (“A1”).NumberFormat = “mmm-éé”
|
az eredmény:
a következő kód fogja beállítani a .Az A1 cella numberformat tulajdonsága egy felhasználó által definiált egyéni dátumformátumra:
1
|
tartomány (“A1”).NumberFormat = “dddd-dd-mmm-éé”
|
az eredmény:
az Excel előre elkészített példáinak áttekintésével megtudhatja, hogyan kell beírni a számformátumokat. További információkért olvassa el a Microsoft dokumentációját a dátumok számformátumairól.
VBA formátum funkció
mint fentebb említettük, a NumberFormat módszer alkalmas az Excel cellákban tárolt dátumok Numberformat beállítására. A VBA – ban a Formátum funkcióval konvertálhatja a dátumokat karakterláncokká bizonyos dátumformázással.
a következő szintaxist használja a dátumok formázásához:
formátum(String_Representation, NumberFormatCode) ahol:
String_Representation – a dátumot képviselő szöveges karakterlánc.
NumberFormatCode – a dátum megjelenítésének módját meghatározó számformátum kód.
a következő kód megmutatja, hogyan kell formázni egy dátum szöveges karakterlánc-ábrázolását hosszú dátumformátumként:
1
|
MsgBox formátum (“1/1/2010”, “dddd, mmmm NN, ÉÉÉÉ”)
|
az eredmény:
vegye figyelembe, hogy a Formátum függvény ugyanazt a dátumformázási szintaxist használja, mint a fenti NumberFormat.
a következő kód megmutatja, hogyan lehet formázni egy dátum szöveges karakterlánc-ábrázolását közepes dátumformátumként:
1
|
MsgBox formátum (“09 október 2012”, “közepes Dátum”)
|
az eredmény:
a következő kód bemutatja, hogyan formázhatja a dátum szöveges karakterlánc-ábrázolását felhasználó által definiált formátumként:
1
|
MsgBox formátum (“09 október 2012″, ” dddd: éé / HH / NN”)
|
VBA Custom Format Builder
a VBA Add-in: AutoMacro tartalmaz egy egyéni formátum Builder a VBA szerkesztő. Ez lehetővé teszi az egyéni formátumok beállítását, és azonnal megtekintheti a kívánt érték kimenetét:
a VBA bővítmény számos más “kódgenerátort”, kiterjedt kódkönyvtárat és egyéb kódolási eszközöket tartalmaz. Ez a végső bővítmény bárki számára, aki komolyan veszi a VBA programozását!
VBA formátum Dátum az Access alkalmazásban
a VBA formátum dátum függvény pontosan ugyanúgy működik az Access VBA-ban, mint az Excel VBA-ban.
1
2
3
4
5
6
7
8
9
10
|
funkció GetDateFilter() karakterláncként
‘ hozzon létre egy karakterláncot, hogy információt kapjon 2 dátummezőből egy űrlapon az Access-ben
Dim strDateField karakterláncként
ha IsNull(nekem.txtSDate) = hamis akkor
ha IsNull (nekem.txtEDate) = igaz, akkor én.txtEDate = én.txtSDate
ha strDateField2 = “”akkor
GetDateFilter = strDateField & “# között” & formátum(nekem.txtSDate, “HH/NN / ÉÉÉÉ”) & “# és # ” & formátum(Me.txtEDate, “HH/NN / ÉÉÉÉ”) & “#”
vége ha
vége ha
vége funkció
|