שלח תשובה

זירת השאלות

410
צפיות
10
תשובות

אמממממ… Year(date) בשאילתה??

,‏ 17 בפברואר, 2005

היי,
אני כותב באקסס שאילתות (זה לא שאני נהנה מזה..) ואני לא מצליח לעשות משהו (שנראה לי שהוא מאוד פשוט)
אני יודע שהפונקציה Year(date) שייכת לVBS..ניסתי לשלב אותה בשאילתה-אך לא עבד.

רציתי לדעת אם אולי באקסס יש משהו דומה ל-Year(date) וגם ל-Month(date)

אשמח לקבל תשובה במהרה,
בתודה,
ירון.

תגיות:

10 תשובות

  1. ניר טייב הגיב:

    אותו דבר… מה השגיאה ?

    Month(Date())
    Year(Year())

  2. אוקי..פתרת לי רק חלק מהבעיה..אבל יש
    בעיה נוספת..
    ראה את השאילתה:

    WHERE TheDate>#01/Month(date())/04# And TheDate<#31/Month(date())/04#

    השדה TheDate הינו מסוג תאריך/שעה…
    אני רוצה לשלוף את כל השדות מה-1 לחודש זה בשנת 2004 עד ה-31 לחודש זה בשנת 2004.

    כאשר אני מפעיל את השאילתה, היא מציגה שגיאה…
    היא אומרת שיש שגיאה במשפט הזה…

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

    תודה מראש!!!

  3. אוריקס הגיב:

    מה שאתה מנסה לעשות שגוי.
    אתה משווה לתאריך באופן לא נכון.

    יש לך שתי אפשרויות לעשות את זה:
    1. להשתמש בפונק' cdate שממירה לתאריך, או להתחכם קצת עם השאילתה. עם cdate זה צריך להראות בערך כך:

    WHERE TheDate>CDate(Month(date()) & "01/04") And TheDate<CDate(Month(date()) & "31/04")

    2. ללכת על הקונספט שמודגם כאן.

  4. טוב זה לא בדיוק פועל…
    עשיתי בדיוק כפי שאמרת וגם עבדתי ע"פ המאמר שנתת לי.
    אין שגיאה, אך הערכים המוצגים לי הם ריקים (בדקתי בטבלאות וראיתי שיש תאריכים שצריכים להופיע).
    הינה תראה את הקוד:

    WHERE TheDate>CDate(Month(date()) & "01/04") And TheDate<CDate(Month(date()) & "31/04")

    יש לי לדוגמה את התאריך 25/02/2004 בתוך הטבלה…
    ע"פ השאילתה כל מה שבין ה-01 לחודש עד ל-31 לחודש יהיה מוצג – התאריך הזה לא מוצג!!

    בקיצור, אינני יודע מה לעשות.
    אודה לכל המשבים לשאלתי.

    תודה מראש לכולם!

  5. אמממממ…אני לא רוצה להיות קרציה…
    אבל אני פשוט זקוק לתשובה.

    תודה מראש!

  6. ניר טייב הגיב:



    WHERE TheDate Between cDate(Month(date()) & "01/04") AND cDate(Month(date()) & "31/04")

  7. בדיוק כמו מקודם – לא מוצג דבר.
    תראה ניר,
    א) אם הייתה שגיאה אתה יודע שהייתי אומר. אבל העניין הוא שאין שגיאה אלא הוא פשוט מציג נתונים ריקים (תראו את התמונה שצרפתי).
    ב) השאילתה עדיין לא עובדת..מה עלי לעשות עכשיו?
    באמת שניסתי לשבור את הראש על הקוד אבל דבר לא עוזר לי..

    אם יעזור,
    אז הינה הקוד

    WHERE TheDate Between cDate(Month(date()) & "01/04") AND cDate(Month(date()) & "31/04")

    מה אעשה עכשיו?

  8. אממממ…מישהו?! משהו?!
    אני בתוך שיש כאן מישהו שמבין בעניין ויוכל לעזור לי…

  9. זהר פלד הגיב:

    אבל למה ככה?
    א) הפורמט באקסס הוא 4 ספרות של שנה, אז תכתוב 2004 במקום 04.

    ב) תנסה את המשפט הבא:

    WHERE MONTH(TheDate) = Month(now())
    And YEAR(TheDate) = 2004

    מה שעשיתי כאן הוא להשוות רק בין השנה ל 2004 ובין החודש לחודש הנוכחי.
    אין שום טעם להתעסק עם הימים אם אתה רוצה לשלוף את כל הימים בחודש.

שלח תשובה