היום אני רוצה להראות כיצד לבצע חישובים בין תאריכים נוחים ב-Visual Basic. נטו באמצעות הפונקציה DateDiff.
זקוק צורה, לחצן, כמה תווית של ושלט DateTimePicker כפי שמוצג בתמונה שלהלן:

ובמקרה לחץ על כפתור יהיה את הקוד הבא:
txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "שנים" txtMeses.Text = DateDiff (DateInterval.Month, DateTimePicker1.Value, Now.Date) & "חודשים" txtSemanas.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) / 7 & "שבועות" txtDias.Text = DateDiff (DateInterval.Day, DateTimePicker1.Value, Now.Date) & "ימים"
להפעיל את היישום, בחרנו תאריך בעבר ולחץ על כפתור לחשב. התוצאה תהיה דומה לתמונה זו:

זוהי דוגמה פשוטה מאוד, רק להסתכל על הקוד קצת צילומי מסך ואני בטוח שלא יהיו לך ספקות, אבל אם היו לי שום, פשוט להשאיר את התגובה שלך.
מקווה שזה עוזר.
מידע Bitacoras.com ...
דרג ב Bitacoras.com: היום אני רוצה להראות כיצד לבצע חישובים בין התאריכים-Visual Basic נטו באמצעות הפונקציה DateDiff.. זקוק צורה, לחצן, תווית כלשהי? השליטה S DateTimePicker, כפי שניתן לראות fol ...
שלום קודם כל תודה.
יש לי חשש.
היום הוא 29 אפריל 2009
נולדתי ספטמבר 1980
על פי
txtAños.Text = DateDiff (DateInterval.Year, DateTimePicker1.Value, Now.Date) & "שנים"
עכשיו יש לי 29 שנים
אבל זה לא כך, יש לי 28 ליום ההולדת שלי לאחרונה בספטמבר
ולשנות את הקוד
שוב תודה
פיטר, אני מושיט לך מעט מידע:
אם מרווח מוגדר DateInterval.Year, ערך ההחזרה מחושב פשוט מן החלקים שנה של שני תאריכים נתון. כמו כן, ערך תמורת DateInterval.Month מחושב פשוט מן הצדדים של השנה, חודש של הטיעונים.
לדוגמה, כאשר משווים 31 דצמבר - 1 ינואר בשנה הבאה, DateDiff מחזירה 1 עבור DateInterval.Year או DateInterval.Month, אבל רק כמה עבר אפילו יום אחד.
באותם מקרים אני ממליץ, למשל, להשתמש תמיד טווח הפער ידי DateInterval.Day 365 וכך היה דמות מדויקת יותר: 28.65 שנים (למשל), ואם אתה רק רוצה את השנה ניתן להשתמש int () function כי יחזיר רק חלק מספר.
דוגמה טובה! תודה על מידע
היי אנשים הודעה טובים ששירתו לי את האמת עד כה עוזר המצלמה grax אני.
חבר טוב שלך פוסט כמוך כדי להגדיר את תבנית DateTimePicker DD / MM / YYYY אני מקבל על ידי MI-QA (יום חמישי, 12 מאי, 1999) ואת באמת לא יודע איך
שלום יוסף:
אתה רק צריך לשנות את השליטה Formatdel הבעלות גם:
DateTimePicker1.Format = DateTimePickerFormat.Short
מזל
ייעוץ הוא אולי קל מדי, אבל אני יכול לשנות את דרך להציג את התאריך datetiempicker, לי נראה כך: יום שישי 27 נובמבר, 2009, אני צריך פשוט: 27/11/2009.
זה יהיה, תודה.
מצטערים, ההערה לא ראה קודם לכן, אשר עונה על השאלה שלי, תודה.
שלום ... יש לי בעיה ... אני משתמש ב 2 DateTimePicker ב vb.net 2005 וכשאני בחר תאריך DateTimePicker 2 כדאי לי לעבור את ההפרש בין שני תאריכים ... הפונקציה אשר נכתבו על "ValueChanged" 2 ... אם אתה מפעיל את זה אבל אני תמיד להחסיר יום אחד ממה שאני צריך לתת ... למשל ... אם אני משאיר את התאריך של היום כדי DateTimePicker 1 (21/12/2009) ו שנבחרה 2 למחרת (22/12 / 2009) תחזיר לי את הערך 0 ... אם אתה בוחר אותו על 23 מחזיר לי את הערך 1. הפונקציה בשימוש הוא כדלקמן:
TextBox1.Text = CStr (DateDiff (DateInterval.Day, DTP_ShipDate.Value, DTP_ETA.Value))
מישהו יודע מה יכול להיות מה קורה בבקשה?
שלום, מה שלומך?
יש לי שאילתה אותם, כפי שאני יכול לקבל רק את יום FEHA, נראה לי הטקסט שבו אני מראה feha "2009/01/01" ואני צריך יום אחד.
יש לי
יום עמום כמספר שלם
יום = יום (tfecha.text)
אני לא להביא כלום, אבל את
בשנה דים כמספר שלם
שנה = השנה (tfecha.text)
אני מציג את השנה כאן, אבל אני צריך היום
סלח לי אני עושה dataTimerPicker אני debuelva בן חודש ימים העצם "yyyy / mm / dd" כדי לבחור תאריך, אני צריך עבור שאילתה ב MySQL ו התאריכים פורמט זה שומר אותם ("yyyy / mm / dd" ) .....
אם הייתי יכול להיות מדריך agradesco ... תודה מראש.
vB נ.ב. אם יש פונקציה בפורמט שימוש מותאם אישית ולאחר CustomFormat YYY / MM / DD
תודה רבה לך על המידע. זה היה לעזר רב.
ניהול טוב אינו VB טוב מאוד, אני עובד את האירוע הזה, אבל אני מקבל שגיאה 424 מכה קטנה שעשיתי, אני מקווה לעזרתך
טווח ("I10") = DateDiff (DateInterval.Month, TextBox18.Value, Now.Date)
תודה.
אלישע חבר טוב, תודה על הפונקציה שלך שימש אותי, אבל יש לי פרטים, התוצאה נותנת לי DateDiff הוא שלילי, בעקבות הדוגמה שאתה נותן אבל שווה לנסות להעביר את זה כמחרוזת, int, CINT, cstr, ושום דבר קצת עזרה בבקשה.
גם אלישע סליחה על הבעיה אבל טוב לפתור את הבעיה שלי, אבל אני חושב להציב את הפרמטרים ההזמנה מתבצעת להיפך, ואני אומר את התאריך 1 ותאריך 2, ולאחר מכן אמור להיות תאריך 1 date2.
תיקון ובכן, עכשיו נאבק עם השוואה של תוצאה זו.
היי חבר תודה מאוד שימושיות
זה קל מאוד חחח
שריד לימים מנסה למצוא משהו
ניתן להטיל טובה גדולה!