Turinys
Svetainė VBA funkcija DateAdd yra Excel programos datos ir laiko kategorijoje VBA funkcijos Naudodami šią funkciją galime pridėti arba atimti metus, mėnesius, dienas, ketvirčius ir net įvairius laiko intervalus, tokius kaip valandos, minutės, sekundės, iš tam tikros datos. Darbas su data ir laiku atliekant kasdienius skaičiavimus ataskaitoms rengti arba palyginimams atlikti yra dažnas scenarijus. Excel programoje naudojant VBA datos ir laiko funkcijas, tokias kaip DateAdd funkcija, sudėtingi ar daug laiko reikalaujantys skaičiavimaiefektyviau ir greičiau.
Atsisiųsti praktikos sąsiuvinį
Atsisiųskite šį pratybų sąsiuvinį, kad galėtumėte atlikti pratimus skaitydami šį straipsnį.
VBA DateAdd Function.xlsmĮvadas į "Excel" VBA funkciją DateAdd
Rezultatai:
data, prie kurios pridedamas arba atimamas tam tikras laiko intervalas.
Sintaksė:
DateAdd (intervalas, skaičius, data)
Argumentai:
Argumentas | Privalomas / pasirenkamas | Aprašymas |
---|---|---|
intervalas | Reikalinga | A eilutė išraiška. |
Laiko intervalas įvairiuose nustatymuose, kurį norime pridėti numeris Reikalinga A skaitmeninis išraiška .
Svetainė numeris iš intervalai pridėti arba atimti
Gali būti teigiamas - už ateitis datos
Gali būti neigiamas - už praeityje datos data Reikalinga A data išraiška
Svetainė data į kurį intervalai yra pridėta
Nustatymai:
Svetainė Funkcija DateAdd turi šiuos intervalų nustatymai:
Nustatymas | Aprašymas |
---|---|
yyyy | Metai |
q | Ketvirtis |
m | Mėnuo |
y | Dienos metai |
d | Diena |
w | Savaitgalis |
ww | Savaitė |
h | Valanda |
n | Minutė |
s | Antrasis |
"Excel" VBA funkcijos DateAdd pavyzdžiai
"Excel" funkcijos DateAdd formulės išraiškos
Yra įvairių būdų, kaip įdėti data argumentas į DateAdd funkcija. Visi jie duoda tą patį rezultatą.
Įdėkite šiuos kodas į "Visual Basic" redaktorius:
(Kaip paleisti kodą "Visual Basic" redaktoriuje)
Sub add_year() Range("D3") = DateAdd("yyyy", 2, #1/1/2022#) Range("D4") = DateAdd("yyyy", 2, DateSerial(2022, 1, 1)) Range("D5") = DateAdd("yyyy", 2, DateValue("Jan 1, 2022")) Range("D6") = DateAdd("yyyy", 2, Range("B6")) End Sub
Paaiškinimas :
DateAdd("yyyy",2, vieną iš šių metodų)
Norėdami įrašyti datos argumentą, galime naudoti įvairius metodus:
- #1/1/2011#
- DateSerial( metai , mėnuo, diena)
- DateValue( data )
- Diapazonas ("ląstelė") - ląstelėje saugoma data
- Datos saugojimas kintamajame
Ląstelėse D3, D4, D5, D6, D7 pirmiau minėtus metodus pateikiame kaip data argumentas DateAdd funkciją nuosekliai ir gavo tas pats rezultatas.
Pridėjome 2 daugiau metų į 1/1/2022 dėl to 1/1/2024.
Čia,
yyyy reiškia metus kaip intervalas
2 intervalų skaičius yra toks numeris .
Pagalba: Kaip paleisti kodą "Visual Basic" redaktoriuje
Atlikite šiuos veiksmus:
- Iš "Excel" juostelė , eikite į Kūrėjo skirtukas ir pasirinkite "Visual Basic Skirtukas.
- Naujame lange spustelėkite Įdėkite skirtuką ir pasirinkite Modulis.
- Parašykite savo kodas redaktoriuje ir paspauskite F5 į paleisti.
Įvairių intervalų nustatymų pridėjimas naudojant funkciją "DateAdd" programoje "Excel
1. Pridėti metus
Kodas:
Sub DateAdd_Years() Range("F5") = DateAdd("yyyy", 2, Range("D5")) End Sub
Rezultatas: 2 metai pridėta prie 1/1/2022 (mm/dd/rrrr) ir dėl to 1/1/2024 (mm//d/dd/yyyy).
Skaityti daugiau: Kaip naudoti metų funkciją "Excel VBA
2. Pridėti ketvirtį
Kodas:
Sub DateAdd_Quarters() Kategorijos ("F5") = DateAdd("q", 2, Kategorijos ("D5")) End Sub
Rezultatas: 2 ketvirčiai = 6 mėnesiai pridėta prie 1/1/2022 (mm/dd/rrrr) ir dėl to 7/1/2022 (mm//d/dd/yyyy).
3. Pridėti mėnesį
Kodas:
Sub DateAdd_Months() Range("F5") = DateAdd("m", 2, Range("D5")) End Sub
Rezultatas: 2 mėnesiai pridėta prie 1/1/2022 (mm/dd/rrrr) ir dėl to 3/1/2022 (mm//d/dd/yyyy).
Skaityti daugiau: Kaip naudoti "Excel" VBA funkciją MĖNESIS
4. Pridėti metų dieną
Kodas:
Sub DateAdd_DayOfYear() Range("F5") = DateAdd("y", 2, Range("D5")) End Sub
Rezultatas : pridėta 2 metų diena į 1/1/2022 (mm/dd/rrrr) ir dėl to 1/3/2022 (mm//d/dd/yyyy).
Skaityti daugiau: Kaip naudoti "Excel" VBA funkciją "Day
5. Pridėti dieną
Kodas:
Sub DateAdd_Day() Range("F5") = DateAdd("d", 2, Range("D5")) End Sub
Rezultatas: pridėtos 2 dienos į 1/1/2022 (mm/dd/rrrr) ir dėl to 1/3/2022 (mm//d/dd/yyyy).
Panašūs skaitiniai
- "Excel" VBA savaitės numeriui rasti (6 greiti pavyzdžiai)
- Kaip "Excel" programoje naudoti VBA funkciją "DatePart" (7 pavyzdžiai)
- VBA DateSerial funkcijos naudojimas programoje "Excel" (5 paprastos programos)
- Kaip konvertuoti datą iš eilutės naudojant VBA (7 būdai)
6. Pridėti savaitės dieną
Kodas:
Sub DateAdd_WeekDay() Range("F5") = DateAdd("w", 10, Range("D5")) End Sub
Rezultatas: pridėta 10 savaitės dienų į 1/1/2022 (mm/dd/rrrr) ir dėl to 1/11/2022 (mm//d/dd/yyyy).
7. Pridėti savaitę
Kodas:
Sub DateAdd_Weeks() Range("F5") = DateAdd("ww", 2, Range("D5")) End Sub
Rezultatas: pridėtos 2 savaitės = 14 dienų į 1/1/2022 (mm/dd/rrrr) ir dėl to 1/15/2022 (mm//d/dd/yyyy).
Skaityti daugiau: Kaip gauti savaitės dieną naudojant VBA
8. Pridėti valandą
Kodas:
Sub DateAdd_Hours() Range("F5") = DateAdd("h", 14, Range("D5")) End Sub
Rezultatas: pridėta 14 valandų į 2022 M. SAUSIO 1 D. 12:00 VAL. (mm/dd/yyyyyy: hh/mm), o rezultatas buvo 2022 M. SAUSIO 1 D. 14:00 VAL. (mm//dd/yyyy : hh/mm).
9. Pridėti minutę
Kodas:
Sub DateAdd_Minutes() Range("F5") = DateAdd("n", 90, Range("D5")) End Sub
Rezultatas: 90 minučių = 1,30 pridėtos valandos į 2022 M. SAUSIO 1 D. 12:00 VAL. (mm/dd/rrrr) ir dėl to 2022 M. SAUSIO 1 D. 1:30 VAL. (mm//d/dd/yyyy).
10. Pridėti antrąjį
Kodas:
Sub DateAdd_Seconds() Range("F5") = DateAdd("s", 120, Range("D5")) End Sub
Rezultatas: 120 sekundžių = 2 pridėtos minutės į 2022 M. SAUSIO 1 D. 12:00 VAL. (mm/dd/rrrr : hh/mm) ir buvo 1/1/2022 12:02 VAL. (mm//dd/yyyy : hh/mm).
Funkcijos "DateAdd" naudojimas programoje "Excel" skirtingiems intervalų nustatymams atimti
Panašiai galime atimti metus, mėnesius, dienas, valandas, minutes ir t. t. iš datos naudojant minuso ženklas svetainėje priekinis iš skaičiaus argumentas . Pavyzdžiui:
Kodas:
Sub DateAdd_Subtract_Years() Range("F5") = DateAdd("y", -2, Range("D5")) End Sub
Rezultatas: 2 metai atimtas iš 1/1/2022 (mm/dd/rrrr) ir dėl to 1/1/2020 (mm//d/dd/yyyy).
Dalykai, kuriuos reikia prisiminti
- Kai naudojame 'w' pridėti darbo dienomis ji kaupiasi visos savaitės dienos įskaitant šeštadienį ir sekmadienį, ne tik darbo dienomis (kaip kas nors gali tikėtis).
- Funkcija DateAdd galiausiai nerodo negaliojanti data Pavyzdžiui, jei prie 2022 m. sausio 31 d. pridėsime 1 mėnesį, rezultatas bus 2022 m. vasario 28 d., o ne 2022 m. vasario 31 d. (jos nėra).
- Jei atimsime daugiau nei 122 metus nuo dabar an klaida atsirastų, nes "Excel" data prasideda iš 1990 m. sausio 1 d.
- Funkcijos DateAdd grąžinimo data priklauso nuo Valdymo skydas Datos nustatymai.
- Funkcijos DateAdd datos argumentą turėtume nurodyti pagal Kalendoriaus nuosavybė . Jei kalendorius yra Gregorian , įvestis da te argumentas taip pat turėtų būti Gregorian . Panašiai, jei kalendorius yra Hijri, datos argumentas turi būti tokio pat formato.
Išvada
Dabar jau žinome, kaip "Excel" programoje naudoti VBA funkciją DateAdd. Tikimės, kad tai paskatins jus drąsiau naudotis šia funkcija. Jei turite klausimų ar pasiūlymų, nepamirškite jų pateikti toliau esančiame komentarų laukelyje.