Excel VBA DataPart

Să presupunem că avem date în datele noastre și nu știm asta în ce săptămână sau în ce parte a lunii este. Există diferite modalități de a afla acest lucru. În excel, există câteva formule complexe pe care trebuie să le realizăm pentru a găsi acest lucru. De exemplu, dacă există o dată, 02 februarie 2019, calculul pentru a afla trimestrul pentru această dată în excel este complex. Cu toate acestea, VBA ne oferă o funcție foarte utilă numită DatePart, care efectuează astfel de calcule pentru noi.

Am explicat mai sus acum de ce folosim funcția DatePart în VBA. Această funcție este utilizată pentru a afla partea datei, fie ea o zi, o lună săptămână trimestrială sau chiar ore sau secunde. Această funcție returnează numărul întreg ca o ieșire. Pentru a înțelege mai multe despre această funcție, să trecem mai întâi prin sintaxa acestei funcții.

Sintaxa DataPart în Excel VBA

Să ne uităm la sintaxa de mai jos pentru DatePart în Excel VBA.

După cum se poate observa, există o serie de patru argumente furnizate acestei funcții. Primele două argumente sunt obligatorii, în timp ce restul două argumente sunt opționale. Cu toate acestea, dacă nu furnizăm ultimele două argumente, VBA are propriile sale valori implicite.

  • Interval: Acest argument este furnizat ca o șir pentru această funcție. Acest argument poate fi o lună, săptămână, an, zi sau chiar oră sau minute sau secunde. De exemplu, pentru un sfert, sintaxa va fi „q” sau pentru anul, sintaxa va fi „aaaa” și așa mai departe.
  • Data: aceasta este data de intrare, oferim acestei funcții pentru a cărei parte vrem să aflăm.
  • FirstDayofWeek: Acesta este un argument opțional pe care îl oferim acestei funcții. Dar dacă nu furnizăm prima zi a acestei funcții, VBA tratează automat SUNDAY ca prima zi a săptămânii. Există diferite sintaxe pentru furnizarea acestui argument care este următorul:

vbUseSystem (Această sintaxă folosește NLS API SETTING), vbSunday (Acesta este argumentul implicit), vbMonday, vbT Tuesday, vbWed Wednesday, vbThursday, vbFriday, vbSaturday (Restul tuturor acestor argumente sunt opționale pentru a fi date)

  • FirstWeekofYear: Acesta este, de asemenea, un argument opțional pentru această funcție. Dar, din nou, dacă nu furnizăm acest argument, VBA are în vedere automat prima săptămână, indiferent de săptămâna este prima de la 1 ianuarie. De asemenea, pentru acest argument, există diferite sintaxe, acestea sunt următoarele:

vbUseSystem, vbFirstJan1 (Aceasta este implicită), vbFirstFourDays (Acest argument începe cu prima săptămână care are cel puțin primele patru zile în noul an), vbFirstFullWeek (Acest argument începe cu prima săptămână completă a anului).

Acum am aflat despre funcții și argumentele sale să ne testăm această funcție în exemple.

Cum se utilizează funcția DatePart în Excel VBA?

Mai jos sunt diferite exemple pentru a utiliza funcția DatePart în excel folosind codul VBA.

Puteți descărca acest șablon VBA DatePart Excel aici - șablonul VBA DatePart Excel

Excel VBA DatePart - Exemplul # 1

Să luăm o intrare de la utilizator ca dată și parte pe care utilizatorul dorește să o afle, apoi vom folosi funcția DatePart și vom afișa rezultatul.

Urmați pașii de mai jos pentru a utiliza funcția DatePart în Excel VBA:

Pasul 1: Din fila dezvoltatorului din secțiunea de cod faceți clic pe Visual Basic care ne va duce la Editorul VB.

Pasul 2: Odată ajuns în VB Editor, introduceți un nou modul în proiectul VBA așa cum se arată mai jos.

Pasul 3: Acum faceți dublu clic pe modul și începeți să declarați o nouă subprocedură, așa cum se arată mai jos.

Cod:

 Sub eșantion () End Sub 

Pasul 4: Definiți trei variabile una ca String și data care va ține data și data de intrare a noastră și alta ca un număr întreg care va stoca ieșirea noastră.

Cod:

 Sub eșantion () Dim Dt ca dată, Prt ca șir, Res ca număr întreg 

Pasul 5: În variabila de dată cereți intrarea de la utilizator pentru data de intrare.

Cod:

 Sub eșantion () Dim Dt ca dată, Prt ca șir, Res ca întreg Dt = InputBox ("Introduceți o dată") 

Pasul 6: În Prt care este parte, luați aportul de la utilizator pentru partea de dată pe care trebuie să o aflăm.

Cod:

 Sub Eșantion () Dim Dt Ca Data, Prt Ca Șir, Res Ca Integer Dt = InputBox ("Introduceți o dată") Prt = InputBox ("Introduceți Partea Date") 

Pasul 7: Acum, în Varia Varia Res, care este rezultat, să aflăm rezultatul folosind funcția DatePart după cum urmează.

Cod:

 Sub Eșantion () Dim Dt Ca Data, Prt Ca Șir, Res Ca Integer Dt = InputBox ("Introduceți o dată") Prt = InputBox ("Introduceți Partea Date") Res = DatePart (Prt, Dt) 

Pasul 8: Afișați valoarea stocată în Res folosind funcția msgbox.

Cod:

 Sub Eșantion () Dim Dt Ca Data, Prt Ca Șir, Res Ca Integer Dt = InputBox ("Introduceți o dată") Prt = InputBox ("Introduceți Partea Date") Res = DatePart (Prt, Dt) MsgBox Res Final Sub 

Pasul 9: Haideți să rulăm codul de mai sus, apăsând tasta F5 sau făcând clic pe butonul Redare și furnizăm o dată după cum urmează.

Pasul 10: Introduceți valoarea Partii de dată.

Pasul 11: Apăsați OK pentru a vedea rezultatul prezentat mai jos.

Obținem 1 ca urmare a datei pe care am furnizat-o ca intrare scade în primul trimestru al anului.

Excel VBA DatePart - Exemplu # 2

Această dată ne permite să furnizăm data direct funcției din cod. Urmați pașii de mai jos pentru a utiliza funcția DatePart în Excel VBA:

Pasul 1: În același modul definiți o altă subprocedură, așa cum se arată mai jos.

Cod:

 Sub Eșantion1 () Final Sub 

Pasul 2: Definiți o variabilă ca întreagă și o variabilă ca Data așa cum se arată mai jos.

Cod:

 Sub eșantion1 () Dim Dt ca dată, Res ca int 

Pasul 3: Furnizați o dată pentru variabilă.

Cod:

 Sub eșantion1 () Dim Dt ca dată, Res ca număr întreg Dt = # 2/2/2019 # Subcend 

Pasul 4: În variabila Res, să calculăm săptămâna datei folosind funcția DatePart.

Cod:

 Sub eșantion1 () Dim Dt ca dată, Res ca număr întreg Dt = # 2/2/2019 # Res = DatePart ("ww", Dt) 

Pasul 5: Afișați valoarea stocată în variabilă folosind funcția msgbox.

Cod:

 Sub eșantion1 () Dim Dt ca dată, Res ca număr întreg Dt = # 2/2/2019 # Res = DatePart ("ww", Dt) MsgBox Res Sub Sub 

Pasul 6: Rulați codul de mai sus apăsând tasta F5 sau făcând clic pe butonul Redare pentru a obține următorul rezultat.

Data furnizată sub formă de intrare se încadrează în a cincea săptămână a anului.

Excel VBA DatePart - Exemplul # 3

Să încercăm un exemplu din viața reală. În foaia 1 din celula A1, am folosit formula = Now () pentru a obține data și ora curente și vom afla partea de date pentru această celulă.

Urmați pașii de mai jos pentru a utiliza funcția DatePart în Excel VBA:

Pasul 1: În același modul, definiți o altă subprocedură după cum urmează.

Cod:

 Sub Eșantion2 () Final Sub 

Pasul 2: Definiți două variabile una ca dată și alta ca un număr întreg.

Cod:

 Sub eșantion2 () Dim Dt ca dată, Res ca int 

Pasul 3: În stocarea Dt variabilă, valoarea celulei A1 este următoarea.

Cod:

 Sub eșantion2 () Dim Dt ca dată, Res ca Inter Dt = Interval ("A1"). 

Pasul 4: Acum, în variabila res, să calculăm partea de săptămână pentru intrare folosind funcția DatePart.

Cod:

 Sub eșantion2 () Dim Dt ca dată, Res ca număr întreg Dt = interval ("A1"). Valoare Res = DatePart ("ww", Dt) 

Pasul 5: Afișați valoarea stocată în variabilă folosind funcția Msgbox.

Cod:

 Sub eșantion2 () Dim Dt ca dată, Res ca număr întreg Dt = interval ("A1"). Valoare Res = DatePart ("ww", Dt) MsgBox Res Sub Sub 

Pasul 6: Rulați codul de mai sus apăsând tasta F5 sau făcând clic pe butonul Redare pentru a obține următorul rezultat.

Data actuală este 25 iulie, care este a 30- a săptămână a anului 2019.

Lucruri de amintit

  • Este funcția date, dar returnează o valoare întreagă.
  • Primele două argumente sunt obligatorii, în timp ce restul două argumente sunt opționale.
  • VBA are propriile argumente implicite dacă nu furnizăm ultimele două argumente funcției DatePart.
  • Această funcție este o funcție VBA și nu o foaie de lucru.

Articole recomandate

Acesta este un ghid pentru VBA DatePart. Aici vom discuta despre cum să utilizăm funcția DatePart în Excel folosind codul VBA împreună cu câteva exemple practice și șablonul excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. VBA Data Adăugare
  2. Formula de azi în Excel
  3. Funcția VBA Data
  4. ACUM Funcție Excel
  5. Cum se utilizează formatul de date VBA în Excel?
  6. Unde să scrieți codul în VBA?

Categorie: