פונקצית VBA DatePart | כיצד להחזיר חלק מהתאריך שצוין?

פונקצית Excel VBA DatePart

DatePart ב- VBA משמש לזיהוי החלק של התאריך לתאריך הנתון שסופק כוויכוח, החלק של התאריך יכול להיות ימים או חודשים או שנה או אפילו דקות שעה ושניות, התחביר של פונקציה זו מבהיר את עצמו מאוד ו זה כדלקמן, Datepart (מרווח, תאריך כוויכוח).

תחביר

התחביר של פונקציית DatePart ניתן להלן:

  • מרווח: הנתונים המועברים בארגומנט מרווח הם סוג מחרוזת, כלומר ארגומנט זה יכול להכיל בו כל ערכים חוקיים. המרווח עשוי להיות של שנה, חודש, רבע, יום, שבוע, שעה, דקה, שנייה.
  • תאריך: ערך התאריך שיש להעריך.
  • firstdayofweek: זהו פרמטר אופציונלי. זה מתאר את היום הראשון בשבוע, ניתן אפילו להתעלם מכך. אם מתעלמים מפרמטר זה, זה לוקח אוטומטית את יום ראשון ביום הראשון בשבוע. אם תרצה לשנות זאת, ניתן להשתמש בפרמטר זה. טענה זו עשויה להיות מורכבת מ- vbUseSystem 0.

השתמש בהגדרת ה- API של ה- NLS

vbSunday (ברירת מחדל), vbMonday, vbTuesday, vbWednesday, vbThursday vbFriday, vbSaturday.
  • firstweekofyear: כמו כן הפרמטר העליון, זהו גם פרמטר אופציונלי. זה מתאר את השבוע הראשון בשנה. ניתן להתעלם גם מפרמטר זה. אם מתעלמים מפרמטר זה, הוא מניח שה -1 בינואר הוא השבוע הראשון בשנה. אם ברצונך לשנות זאת, ניתן להשתמש בפרמטר זה.

    טענה זו עשויה להיות מורכבת מהערכים הבאים.

    vbUseSystem, vbFirstJan1, vbFirstFourDays, vbFirstFullWeek.

לאחר מתן כל הפרמטרים, Datepart () יחזיר את הערך המספרי כגון תאריך שלם או שנה או חודש או רבעון וכו 'ומכאן שסוג ההחזרה של פונקציה זו יהיה ערך מספרי.

כיצד להשתמש בפונקציה DatePart ב- VBA?

ניתן להוריד תבנית VBA DatePart זו כאן - תבנית VBA DatePart Excel

דוגמה מס '1

הדוגמה הראשונה היא להציג גם את התאריך המלא ואת הרבעון של אותו חודש.

כדי להשיג זאת עלינו לכתוב קצת קוד ב- Visual Basic, עבור הכרטיסייה Goto Developer ההיא ואז ללחוץ על Visual Basic ואז ייפתח חלון.

בחלון זה כתוב את הקוד כפי שמוצג להלן.

קוד:

 Sub date_Datepart () עמעום mydate כ- Variant mydate = # 12/25/2019 # MsgBox mydate MsgBox DatePart ("q", mydate) 'מציג רבע סוף משנה 

בדוגמה זו השתמשנו בפונקציית Datepart כדי להציג את התאריך וחלק כלשהו של התאריך שהוא רבע מהתאריך. זה מציג באיזה רבעון השנה התאריך נכנס.

אם אנו מנקים באגים בקוד, התאריך יוצג כתאריך מלא בפעם הראשונה כאשר הקוד מבצע את "Msgbox mydate" מכיוון שהתאריך האקראי מוקצה למשתנה "mydate".

לאחר מכן אנו מציגים באיזה רבעון שנמצא תאריך זה.

כאשר אתה מריץ את הקוד באופן ידני או משתמש במקש קיצור F5 אז התאריך יוצג כפי שמוצג לאחר לחיצה על אישור. לאחר מכן, רבע התאריך יוצג. זה יכול להופיע בצילום המסך למטה.

כמו כן, ניתן להציג רבעון, רק תאריך או חודש או שנה.

דוגמה מס '2

בדוגמה זו, אכניס ידנית את התאריך בזמן הריצה.

קוד:

Sub date1_datePart () Dim TodayDate as Date 'הצהירו על משתנים. Dim Msg TodayDate = InputBox ("הזן תאריך:") Msg = "Quarter:" & DatePart ("q", TodayDate) MsgBox Msg End Sub

כאן בדוגמה זו, אנו מנסים להשיג את התאריך באופן ידני בזמן הריצה. הקוד "TodayDate = InputBox (" הזן תאריך: ")" בשורה זו מציין שניתן להזין את התאריך באופן ידני,

לאחר הזנת התאריך באופן ידני הוא מציג את רבע התאריך בתיבת הודעות. ניתן להציג זאת בצילום המסך למטה.

מכיוון שחודש יוני הוא ברבעון השני, זה מציג את הרבעון השני כפי שמוצג בצילום המסך לעיל.

דוגמה מס '3

בדוגמה זו, כל הערכים יתמלאו בתאים.

קוד:

 חוברת עבודה פרטית תת_פתיחה () עמום DummyDate כתאריך DummyDate = ActiveSheet.Cells (2, 2) ActiveSheet.Cells (2, 2) .Value = Day (DummyDate) ActiveSheet.Cells (3, 2) .Value = Hour (DummyDate) ActiveSheet תאים (4, 2). ערך = דקה (DummyDate) ActiveSheet. תאים (5, 2). ערך = חודש (DummyDate) ActiveSheet.Cells (6, 2). ערך = יום שבוע (DummyDate) סוף משנה 

התאריכים מלאים בתאים בגליון ה- Excel, לשם כך הקוד כתוב כ- Active Sheet.cells. לפי קוד זה התאריך שקיים עשוי להיות חודש או תאריך ניתן להכניס לתאים הנתונים.

לדוגמא, בצילום המסך שלמעלה,

יש להכניס את היום לתאים (2, 2) בגיליון האקסל. מכאן שהקוד כתוב כ- "ActiveSheet.Cells (2, 2) .Value = Day (DummyDate)".

הפעל את הקוד באמצעות מקש F5 או באופן ידני והתוצאה תהיה כפי שמוצג להלן.

זה כברירת מחדל לוקח תאריך היום והוא מוצג בתא 30 בתא (2,6).

כמו כן עבור כל הנתונים האחרים ניתן למלא אותם.

שימוש בפונקציית DatePart

  • ניתן להשתמש בפונקציית DatePart כדי להציג את החלק של התאריך כפי שהשם מציין כלומר, אם רק צריך להציג יום או חודש או שנה של התאריך, ניתן להשתמש בפונקציה זו.
  • פונקציה זו גם מפרידה בין תאריך, חודש ושנה לבין תאריך מסוים.
  • על ידי שימוש בפונקציה זו התאריך אינו מופרד רק אנו יכולים לקבל גם את הרבע, ​​היום, השעה, הדקה והשנייה.

דברים שיש לזכור

  • פונקציה זו יכולה לשמש רק כפונקציית VBA. ב- Excel רגיל, לא ניתן להשתמש בזה.
  • התאריכים שניתנים כערך בפונקציה זו יכולים להינתן בכל פורמט כגון פורמט mm-dd-yyyy או פורמט DD-MM-YYYY וכו '.
  • פונקציה זו תפריד בין כל הערכים בנפרד, כגון תאריך, חודש, שנה או שעה, גם שעה, דקה, שניות.
  • זה מאורגן תחת פונקציות תאריך ושעה ב- VBA של Microsoft Excel.