VBA DateDiff | Vaiheittainen esimerkki DateDiff VBA Excel -toiminnon käytöstä

VBA: n DATEDIFF-funktio on sisäänrakennettu toiminto VBA: ssa, joka on luokiteltu myös VBA: n päivämäärä- ja aikatoimintojen mukaan. Tätä funktiota käytetään kahden päivämäärän välisen eron saamiseen, tätä funktiota varten on kolme argumenttia, ensimmäinen argumentti on se osa mitä haluamme joka voi olla vuoden päivää tai kuukautta tai sekuntia ja kaksi päivämäärää ja tulos on kokonaisluku.

DATEDIFF Toiminto VBA: ssa

DATEDIFF VBA-funktio laskee kahden päivämäärän välisen eron päivinä, kuukausina, vuosineljänneksinä ja vuosina.

Excelissä kahden päivämäärän eron löytämisellä on monia tapoja. Kahden päivämäärän välisen eron laskemiseksi ei tarvita erityistä kaavaa.

Katso esimerkki alla olevasta kuvasta.

Jos haluamme laskea näiden kahden päivämäärän välisen eron, voimme yksinkertaisesti vähentää päivämäärän 1 päivämäärästä 2.

Se on antanut meille eron kahden päivämäärän välillä useissa päivissä. Tässä on ongelma tämän yleisen kaavan kanssa. Jos tarvitsemme eron kuukausina, vuosina, vuosineljänneksinä jne., Se ei voi antaa.

Tässä artikkelissa näytämme, kuinka tätä DateDiff-toimintoa käytetään VBA: ssa.

Mikä on DATEDIFF-funktio Excel VBA: ssa?

VBA: ssa DATEDIFF tarkoittaa "Päivämääräeroa kahden päivämäärän välillä".

Tämä toiminto voi antaa meille kahden päivämäärän välisen aikavälin määrän. Kun haluamme löytää eron kahden päivämäärän välillä, löydämme sen päivinä, viikkoina, kuukausina, vuosineljänneksinä jne.

Funktion ymmärtämiseksi katso funktion alla olevaa syntaksia.

Intervalli: Tämä ei ole muuta kuin miten haluat laskea päivämääräero. Onko päivinä, kuukausina, viikkoina, vuosineljänneksinä jne.… Alla on luettelo samoista.

Päivämäärä 1: Mikä on ensimmäinen päivämäärä, jonka haluat löytää eron.

Päivämäärä 2: Mikä on toinen päivämäärä, jonka haluat löytää eron päivämäärästä 1. Päiväys 1: Mikä on ensimmäinen päivämäärä, jonka haluat löytää eron.

Tässä kaava on Päivämäärä 2 - Päivämäärä 1.

[Viikon ensimmäinen päivä]: Mikä on viikon ensimmäinen päivä? Voimme seuraavia argumentteja.

[Vuoden ensimmäinen viikko]: Mikä on vuoden ensimmäinen viikko. Voimme kirjoittaa seuraavat argumentit.

Esimerkkejä DATEDIFF-toiminnosta Excel VBA: ssa

Seuraavassa on esimerkkejä Excel VBA DateDiff -sovelluksesta.

Voit ladata tämän VBA DateDiff -toimintomallin täältä - VBA DateDiff-toimintomalli

Esimerkki # 1 - Erojen löytäminen päivissä

Oletetaan, että sinulla on kaksi päivämäärää "15-01-2018" ja "15-01-2019". Etsitään kaikenlaisia ​​eroja näille kahdelle päivämäärälle.

Vaihe 1: Luo ensin makron nimi.

Koodi:

 Sub DateDiff_Example1 () End Sub 

Vaihe 2: Määritä kaksi muuttujaa päivämääräksi.

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date End Sub 

Vaihe 3: Nyt Date1-muuttujalle määritetään "15-01-2018" ja Date2-muuttujalle "15-01-2019".

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Vaihe 4: Tulosten tallentamiseksi määritä vielä yksi muuttuja Pitkäksi.

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" End Sub 

Vaihe 5: Määritä nyt tämän muuttujan arvo VBA: n DATEDIFF-toiminnon kautta

Koodi:

 Sub DateDiff_Example1 () Himmennä päivämäärä1 kuten Päivämäärä Dim Päivämäärä2 Kuten Päivämäärä Himmennä tulos Pitkä päivämäärä1 = "15-01-2018" Päivämäärä2 = "15-01-2019" Tulos = Päivämääräero (Loppu 

Vaihe 6: Ensimmäinen argumentti on, millaista eroa tarvitsemme näiden kahden päivämäärän välillä. Oletetaan, että meidän on löydettävä päivien lukumäärä, joten anna argumentti nimellä "D".

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", End Sub 

Vaihe 7: Mikä on ensimmäinen päivä löytää ero. Ensimmäinen päivämäärä on "15-01-2018", jonka olemme jo määrittäneet muuttujalle "Date1". Joten anna muuttujan nimi tähän.

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" Tulos = DateDiff ("D", Date1, End Sub 

Vaihe 8: Mikä on toinen päivämäärä eron löytämiseksi. Toinen päivämäärä on "15-01-2019", joka pitää arvon muuttujan "Date2" kautta.

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" Result = DateDiff ("D", Date1, Date2) End Sub 

Vaihe 9: Ohita kaksi viimeistä parametria. Määritä nyt muuttujan "Tulos" arvo VBA-sanomaruudun kautta.

Koodi:

 Sub DateDiff_Example1 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" Tulos = DateDiff ("D", Date1, Date2) MsgBox Tuloksen loppu Sub 

Suorita nyt koodi F5-näppäimellä tai manuaalisesti, saamme näiden kahden päivämäärän välisen eron muutamassa päivässä.

Joten "15-01-2018" - 15-01-2019 "tarkka ero on 1 vuosi, joten saimme tulokseksi 365 päivää.

Näin voimme löytää eron kahden päivämäärän välillä aikavälillä.

Esimerkki 2 - Ero kuukausina

Koodi:

 Sub DateDiff_Example2 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" Tulos = DateDiff ("M", Date1, Date2) MsgBox Tulos End Sub 

 

Suorita tämä koodi käyttämällä F5-näppäintä tai voit suorittaa manuaalisesti tuloksen näyttämisen alla olevan mukaisesti.

Esimerkki 3 - Ero vuosien välillä

Koodi:

 Sub DateDiff_Example3 () Dim Date1 As Date Dim Date2 As Date Dim Result Long Date1 = "15-01-2018" Date2 = "15-01-2019" Tulos = DateDiff ("YYYY", Date1, Date2) MsgBox Tuloksen loppu Sub 

Suorita tämä koodi F5-näppäimellä tai manuaalisesti nähdäksesi tuloksen.

Tehtävä harjoituksena

Toivon, että olet ymmärtänyt VBA DATEDIFF -toiminnon. Katso alla olevat kotitehtävät sinulle. Löydä alla olevien päivämäärien ero kuukausista.

Jos et ole löytänyt alla olevaa tapaa, se on valmiin koodi sinulle.

Koodi:

 Aliosoitus () Dim k niin kauan kuin k = 2 - 8 solua (k, 3). Arvo = DateDiff ("M", solut (k, 1), solut (k, 2)) Seuraava k End Sub 

Voit suorittaa tämän koodin manuaalisesti tai painamalla F5-näppäintä nähdäksesi tuloksen.


$config[zx-auto] not found$config[zx-overlay] not found