דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. מספר עשרוני בVBA אקסס

מספר עשרוני בVBA אקסס

מתוזמן נעוץ נעול הועבר תכנות
6 פוסטים 3 כותבים 121 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א מנותק
    א מנותק
    ארי
    כתב ב נערך לאחרונה על ידי ארי
    #1

    צהריים טובים
    יש לי קוד VBA באקסס שצריך להכניס מספר לתוך עמודה בטבלה, העמודה בטבלה מוגדרת על 'כפול', ובקוד המשתנה של המספר מוגדר כ'Double'.
    אבל בכל זאת, אם יש שארית למספר הוא מעגל אותו למספר השלם הקרוב.
    למה זה קורה?
    תודה רבה.

    עריכה: אני יפרט קצת יותר, זה לא מספר סתם, אלא חשבון של Dsum לחלק לDcount (אמור לחשב סכום של כל תשלום).
    ובחילוק הוא תמיד מחזיר מספר שלם.
    אם אני סתם כותב לו מספר להכניס לטבלה הוא עושה את זה מצוין, אבל כנראה הבעיה היא בחילוק, אבל אני לא מבין למה שיהיה לו בעיה להחזיר מספר עשרוני.
    תודה!

    yossizY OdedDvirO 2 תגובות תגובה אחרונה
    1
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב לארי ב נערך לאחרונה על ידי
      #2
      פוסט זה נמחק!
      תגובה 1 תגובה אחרונה
      1
      • OdedDvirO מנותק
        OdedDvirO מנותק
        OdedDvir
        השיב לארי ב נערך לאחרונה על ידי OdedDvir
        #3

        @ארי ב-VBA, חלוקה של שני שלמים מטיפוס Integer נותנת תמיד מספר שלם. מתעלמים מהשארית לגמרי.
        אתה צריך להכניס את התוצאה של DCount ו-DSum לתוך משתנה מסוג Double, (או לבצע Casting מפורש) ואז לבצע את החישוב:

        Dim mySum As Double
        Dim myCount As Double
        Dim result As Double
        
        mySum = DSum(....)
        myCount = DCount(....)
        result = mySum / myCount
        
        א תגובה 1 תגובה אחרונה
        2
        • א מנותק
          א מנותק
          ארי
          השיב לOdedDvir ב נערך לאחרונה על ידי
          #4

          @OdedDvir תודה, אבדוק.
          וסתם התעניינות, עכשיו הDcount והSum לא נמצאים בשום משתנה, זה חלק מהמשתנה של התוצאה

          Dim result as Double
          result = Dsum(....) / Dcount(....)
          

          זה גם בעייתי?

          OdedDvirO תגובה 1 תגובה אחרונה
          0
          • OdedDvirO מנותק
            OdedDvirO מנותק
            OdedDvir
            השיב לארי ב נערך לאחרונה על ידי
            #5

            @ארי בקצרה - כן.
            טיפוס הנתונים שמוחזר מהן הוא Variant, מה שאומר שהוא נקבע בזמן הריצה. מסתבר ש DCount מומרת ל-Integer, כי ספירה מחזירה מספר שלם.

            א תגובה 1 תגובה אחרונה
            1
            • א מנותק
              א מנותק
              ארי
              השיב לOdedDvir ב נערך לאחרונה על ידי
              #6

              @OdedDvir אוקיי, טוב לדעת.
              תודה!

              תגובה 1 תגובה אחרונה
              0

              בא תתחבר לדף היומי!
              • התחברות

              • אין לך חשבון עדיין? הרשמה

              • התחברו או הירשמו כדי לחפש.
              • פוסט ראשון
                פוסט אחרון
              0
              • דף הבית
              • קטגוריות
              • פוסטים אחרונים
              • משתמשים
              • חיפוש
              • חוקי הפורום