בקשת מידע | חישוב תאריך
-
אני מחפש דרך האם וכיצד ניתן לעשות אם יש לי בתא א' תאריך ואני רוצה שע"פ התאריך הזה ידע בתא ב' לכתוב תאריך אחר
כגון שתמיד יהיה כתוב 15 לחודש הקרוב לתאריך שנכתב בתא א',
ואם אפשרי לתלות את זה בתנאי נוסף
דוגמא שאם בתא א' כתוב 14/12 אז אם כתוב בתא ג' 1 יהיה כתוב בתא ב' 15/12
ואם בתא ג' יהיה כתוב 2 יהיה כתוב 10/1
לתוספת באור דוגמא נוספת שאם כתוב בתא א 1/12 אז אם כתוב בתא ג' 1 יהיה כתוב בתא ב' 15/12
ואם בתא ג' יהיה כתוב 2 יהיה כתוב 10/12
תודה רבה -
אני מחפש דרך האם וכיצד ניתן לעשות אם יש לי בתא א' תאריך ואני רוצה שע"פ התאריך הזה ידע בתא ב' לכתוב תאריך אחר
כגון שתמיד יהיה כתוב 15 לחודש הקרוב לתאריך שנכתב בתא א',
ואם אפשרי לתלות את זה בתנאי נוסף
דוגמא שאם בתא א' כתוב 14/12 אז אם כתוב בתא ג' 1 יהיה כתוב בתא ב' 15/12
ואם בתא ג' יהיה כתוב 2 יהיה כתוב 10/1
לתוספת באור דוגמא נוספת שאם כתוב בתא א 1/12 אז אם כתוב בתא ג' 1 יהיה כתוב בתא ב' 15/12
ואם בתא ג' יהיה כתוב 2 יהיה כתוב 10/12
תודה רבה@האדם-השלישי
ניתן לבצע זאת באקסל באמצעות שילוב של הפונקציות IF (לבדיקת התנאים), DATE (לבניית התאריך), YEAR, MONTH, ו-DAY (לפירוק התאריך המקורי).להלן הנוסחה שיש להדביק בתא ב' (בהנחה שהתאריך נמצא בתא A1 והמספר 1 או 2 נמצא בתא C1):
Excel
=IF(C1=1, DATE(YEAR(A1), MONTH(A1), 15), IF(C1=2, IF(DAY(A1)<10, DATE(YEAR(A1), MONTH(A1), 10), DATE(YEAR(A1), MONTH(A1)+1, 10)), ""))
הסבר לוגיקת הנוסחה:
החלק הראשון (C1=1): הנוסחה בודקת האם בתא C1 כתוב 1. אם כן, היא לוקחת את השנה והחודש מתא A1 ופשוט קובעת את היום ל-15. זה תואם לדוגמאות שלך (14/12 ו-1/12 שניהם הופכים ל-15/12).החלק השני (C1=2): אם בתא C1 לא כתוב 1, הנוסחה בודקת אם כתוב 2. במידה וכן, מתבצעת בדיקה נוספת על היום בחודש (פונקציית DAY):
אם היום קטן מ-10 (למשל 1/12): התאריך שייקבע הוא ה-10 לאותו חודש נוכחי.
אם היום הוא 10 ומעלה (למשל 14/12): התאריך שייקבע הוא ה-10 לחודש הבא (MONTH(A1)+1).
הערה חשובה לגבי המעבר בין שנים: פונקציית DATE באקסל היא חכמה. אם הנוסחה מוסיפה 1 לחודש דצמבר (חודש 12 + 1 = 13), אקסל ידע אוטומטית להעביר זאת לחודש ינואר של השנה הבאה. כך שבדוגמה שלך, ה-14/12 אכן יהפוך ל-10/1 בשנה החדשה ללא צורך בתיקון נוסף.
טיפ: אם האקסל שלך מוגדר בעברית/ישראל, ייתכן שתצטרך להשתמש בנקודה-פסיק (;) במקום פסיק (,) בין חלקי הנוסחה. במקרה כזה הנוסחה תיראה כך: =IF(C1=1; DATE(YEAR(A1); MONTH(A1); 15); IF(C1=2; IF(DAY(A1)<10; DATE(YEAR(A1); MONTH(A1); 10); DATE(YEAR(A1); MONTH(A1)+1; 10)); ""))
-
@האדם-השלישי
ניתן לבצע זאת באקסל באמצעות שילוב של הפונקציות IF (לבדיקת התנאים), DATE (לבניית התאריך), YEAR, MONTH, ו-DAY (לפירוק התאריך המקורי).להלן הנוסחה שיש להדביק בתא ב' (בהנחה שהתאריך נמצא בתא A1 והמספר 1 או 2 נמצא בתא C1):
Excel
=IF(C1=1, DATE(YEAR(A1), MONTH(A1), 15), IF(C1=2, IF(DAY(A1)<10, DATE(YEAR(A1), MONTH(A1), 10), DATE(YEAR(A1), MONTH(A1)+1, 10)), ""))
הסבר לוגיקת הנוסחה:
החלק הראשון (C1=1): הנוסחה בודקת האם בתא C1 כתוב 1. אם כן, היא לוקחת את השנה והחודש מתא A1 ופשוט קובעת את היום ל-15. זה תואם לדוגמאות שלך (14/12 ו-1/12 שניהם הופכים ל-15/12).החלק השני (C1=2): אם בתא C1 לא כתוב 1, הנוסחה בודקת אם כתוב 2. במידה וכן, מתבצעת בדיקה נוספת על היום בחודש (פונקציית DAY):
אם היום קטן מ-10 (למשל 1/12): התאריך שייקבע הוא ה-10 לאותו חודש נוכחי.
אם היום הוא 10 ומעלה (למשל 14/12): התאריך שייקבע הוא ה-10 לחודש הבא (MONTH(A1)+1).
הערה חשובה לגבי המעבר בין שנים: פונקציית DATE באקסל היא חכמה. אם הנוסחה מוסיפה 1 לחודש דצמבר (חודש 12 + 1 = 13), אקסל ידע אוטומטית להעביר זאת לחודש ינואר של השנה הבאה. כך שבדוגמה שלך, ה-14/12 אכן יהפוך ל-10/1 בשנה החדשה ללא צורך בתיקון נוסף.
טיפ: אם האקסל שלך מוגדר בעברית/ישראל, ייתכן שתצטרך להשתמש בנקודה-פסיק (;) במקום פסיק (,) בין חלקי הנוסחה. במקרה כזה הנוסחה תיראה כך: =IF(C1=1; DATE(YEAR(A1); MONTH(A1); 15); IF(C1=2; IF(DAY(A1)<10; DATE(YEAR(A1); MONTH(A1); 10); DATE(YEAR(A1); MONTH(A1)+1; 10)); ""))
@צמצם ראשית כל סליחה שלא התפניתי להתייחס לדברים הנפלאים שכתבת ותודה רבה
אך כשניסיתי להסתדר עם זה ראיתי א. שלא הסברתי את עצמי טוב.
ב. שלא הדשלמתי את הבקשה (חשבתי שאח"כ אני יצליח להוסיף לזה עוד דברים)
ומה שאני צריך למעשה כדלהלן: אף ב 15 לחודש אני צריך שזה יהיה כמו ה 10 שזה יהיה תמיד הבא (כגון שאם יהיה כתוב ב A1 את התאריך 20/12/25 יהיה כתוב בתא ב' 15/1/26 ) וכן אני צריך אפשרות של אופציה שיכתוב בתא ב' (ע"פ כיתוב אחר נוסף) את אותו תאריך שכתוב בתא A1
נ.ב. בתא C1 יהיה כיתוב בעברית
אשמח מאוד אם יוכלו לעזור לי בזה (ואולי גם אם עוד נוסחה אני יצליח ללמוד יותר טוב איך הנוסחה עובדת)
תודה רבה