Obsah
Stránka Funkcia VBA DateAdd je v kategórii dátum a čas programu Excel Funkcie VBA Pomocou tejto funkcie môžeme od daného dátumu sčítať alebo odčítať roky, mesiace, dni, štvrťroky a dokonca aj rôzne časové intervaly, ako sú hodiny, minúty, sekundy. Práca s dátumom a časom v každodenných výpočtoch pri vytváraní zostáv alebo porovnávaní je bežným scenárom. V programe Excel sa vďaka použitiu funkcií VBA pre dátum a čas, ako je funkcia DateAdd, môžu vykonávať zložité alebo časovo náročné výpočtyefektívnejšie a rýchlejšie.
Stiahnite si cvičebnicu
Stiahnite si tento cvičebný zošit, aby ste si počas čítania tohto článku precvičili svoje zručnosti.
Funkcia VBA DateAdd.xlsmÚvod do funkcie DateAdd aplikácie Excel VBA
Výsledok:
dátum, ku ktorému sa pripočíta alebo odčíta určitý časový interval.
Syntax:
DateAdd (interval, číslo, dátum)
Argumenty:
Argument | Povinné/voliteľné | Popis |
---|---|---|
interval | Požadované | A reťazec vyjadrenie. |
Časový interval v rôznych nastaveniach, ktorý chceme pridať číslo Požadované A číselné výraz .
Stránka číslo z intervaly ktoré sa majú pripočítať alebo odčítať
Môže byť pozitívne - pre budúcnosť dátumy
Môže byť negatívne - pre minulosť dátumy dátum Požadované A dátum výraz
Stránka dátum na ktoré sa intervaly sú pridané
Nastavenia:
Stránka Funkcia DateAdd má tieto nastavenia intervalu:
Nastavenie | Popis |
---|---|
yyyy | Rok |
q | Štvrtina |
m | Mesiac |
y | Rok dňa |
d | Deň |
w | Víkendový deň |
ww | Týždeň |
h | Hodina |
n | Minúta |
s | Druhý |
Príklady funkcie Excel VBA DateAdd
Výrazy vzorca funkcie DateAdd programu Excel
Existujú rôzne spôsoby, ako umiestniť dátum argument do Funkcia DateAdd. Výsledkom všetkých je rovnaký výstup.
Vložte tieto údaje kód v Editor jazyka Visual Basic:
(Ako spustiť kód v editore jazyka Visual Basic)
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("1. január 2022")) Range("D6") = DateAdd("yyyy", 2, Range("B6")) End Sub
Vysvetlenie :
DateAdd("rrrr",2, jeden z nasledujúcich spôsobov)
Na zadanie argumentu dátumu môžeme použiť rôzne metódy:
- #1/1/2011#
- DateSerial( rok , mesiac, deň)
- DateValue( dátum )
- Rozsah ("cell") - Dátum uložený v bunke
- Uloženie dátumu do premennej
V bunkách D3, D4, D5, D6, D7 vyššie uvedené metódy sme vložili ako dátum argument DateAdd funkciu postupne a dostal rovnaký výsledok.
Pridali sme 2 viac rokov na 1/1/2022 čo viedlo k 1/1/2024.
Tu,
yyyy predstavuje rok ako interval
2 predstavuje počet intervalov ako číslo .
Pomoc: Ako spustiť kód v editore jazyka Visual Basic
Postupujte podľa nasledujúcich krokov:
- Z Pásmo aplikácie Excel , prejdite na Karta Vývojár a vyberte Visual Basic Tab.
- V novom okne kliknite na Vložte a vyberte Modul.
- Napíšte svoj kód v editore a stlačte F5 na beží.
Pridávanie rôznych nastavení intervalov pomocou funkcie DateAdd v programe Excel
1. Pridať rok
Kód:
Sub DateAdd_Years() Range("F5") = DateAdd("yyyy", 2, Range("D5") End Sub
Výsledok: 2 roky pridané do 1/1/2022 (mm/dd/rrrr) a výsledkom je 1/1/2024 (mm//dd/rrrr).
Prečítajte si viac: Ako používať funkciu Rok v programe Excel VBA
2. Pridať štvrťrok
Kód:
Sub DateAdd_Quarters() Range ("F5") = DateAdd("q", 2, Range("D5")) End Sub
Výsledok: 2 štvrťroky = 6 mesiacov pridané do 1/1/2022 (mm/dd/rrrr) a výsledkom je 7/1/2022 (mm//dd/rrrr).
3. Pridať mesiac
Kód:
Sub DateAdd_Months() Range("F5") = DateAdd("m", 2, Range("D5")) End Sub
Výsledok: 2 mesiace pridané do 1/1/2022 (mm/dd/rrrr) a výsledkom je 3/1/2022 (mm//dd/rrrr).
Prečítajte si viac: Ako používať funkciu Excel VBA MESIAC
4. Pridať deň v roku
Kód:
Sub DateAdd_DayOfYear() Range("F5") = DateAdd("y", 2, Range("D5") End Sub
Výsledok : 2 pridané dni v roku na 1/1/2022 (mm/dd/rrrr) a výsledkom je 1/3/2022 (mm//dd/rrrr).
Prečítajte si viac: Ako používať funkciu Deň v programe Excel VBA
5. Pridať deň
Kód:
Sub DateAdd_Day() Range("F5") = DateAdd("d", 2, Range("D5")) End Sub
Výsledok: pridané 2 dni na 1/1/2022 (mm/dd/rrrr) a výsledkom je 1/3/2022 (mm//dd/rrrr).
Podobné čítania
- Excel VBA na vyhľadávanie čísla týždňa (6 rýchlych príkladov)
- Ako používať funkciu DatePart VBA v programe Excel (7 príkladov)
- Používanie funkcie DateSerial VBA v programe Excel (5 jednoduchých aplikácií)
- Ako previesť dátum z reťazca pomocou VBA (7 spôsobov)
6. Pridať deň v týždni
Kód:
Sub DateAdd_WeekDay() Range("F5") = DateAdd("w", 10, Range("D5") End Sub
Výsledok: pridaných 10 dní v týždni na 1/1/2022 (mm/dd/rrrr) a výsledkom je 1/11/2022 (mm//dd/rrrr).
7. Pridať týždeň
Kód:
Sub DateAdd_Weeks() Range("F5") = DateAdd("ww", 2, Range("D5") End Sub
Výsledok: 2 týždne = 14 pridaných dní na 1/1/2022 (mm/dd/rrrr) a výsledkom je 1/15/2022 (mm//dd/rrrr).
Prečítajte si viac: Ako získať deň v týždni pomocou VBA
8. Pridať hodinu
Kód:
Sub DateAdd_Hours() Range("F5") = DateAdd("h", 14, Range("D5")) End Sub
Výsledok: 14 pridaných hodín na 1/1/2022 12:00 (mm/dd/rrrr: hh/mm) a výsledkom je 1/1/2022 14:00 (mm//dd/rrrr : hh/mm).
9. Pridať minútu
Kód:
Sub DateAdd_Minutes() Range("F5") = DateAdd("n", 90, Range("D5")) End Sub
Výsledok: pridaných 90 minút = 1,30 hodiny na 1/1/2022 12:00 (mm/dd/rrrr) a výsledkom je 1/1/2022 1:30 HOD. (mm//dd/rrrr).
10. Pridať druhý
Kód:
Sub DateAdd_Seconds() Range("F5") = DateAdd("s", 120, Range("D5")) End Sub
Výsledok: 120 sekúnd = 2 pridané minúty na 1/1/2022 12:00 (mm/dd/rrrr : hh/mm) a výsledkom je 1/1/2022 12:02 (mm//dd/rrrr : hh/mm).
Použitie funkcie DateAdd v programe Excel na odčítanie rôznych nastavení intervalu
Podobne môžeme odčítať rokov, mesiacov, dní, hodín, minút atď. z dátumu pomocou znamienko mínus na stránke predná strana z argument číslo Napríklad:
Kód:
Sub DateAdd_Subtract_Years() Range("F5") = DateAdd("y", -2, Range("D5")) End Sub
Výsledok: 2 roky odpočítané od 1/1/2022 (mm/dd/rrrr) a výsledkom je 1/1/2020 (mm//dd/rrrr).
Čo si treba zapamätať
- Keď používame 'w' pridať pracovné dni to sa sčítava všetky dni v týždni vrátane soboty a nedele, nielen počas pracovných dní (niekto by to mohol očakávať).
- Funkcia DateAdd nakoniec nezobrazuje neplatný dátum Napríklad, ak k 31. januáru 2022 pripočítame 1 mesiac, výsledkom bude 28. február 2022, nie 31. február 2022 (ten neexistuje).
- Ak odpočítame viac ako 122 rokov odteraz chyba by došlo, pretože dátum Excel začína z adresy 1. januára 1990.
- Dátum návratu funkcie DateAdd závisí od Ovládací panel Nastavenie dátumu.
- Argument dátumu funkcie DateAdd by sme mali podľa Vlastnosť kalendára Ak je kalendár Gregoriánsky , vstup da te argument by mali byť tiež v Gregoriánsky . Podobne, ak je kalendár v Hijri, argument dátumu musí byť v rovnakom formáte.
Záver
Teraz už vieme, ako používať funkciu DateAdd v programe Excel. Dúfame, že vás to povzbudí, aby ste túto funkciu používali s väčšou istotou. Akékoľvek otázky alebo návrhy nezabudnite uviesť do komentára nižšie