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

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

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

טיפול בשגיאה VBA אקסס

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

    צהריים טובים.
    אני רוצה לכתוב קוד באקסס שאם מתרחשת שגיאה במהלך הריצה הוא יקפיץ הודעה עם פירוט השגיאה והשורה שבה התרחשה השגיאה.
    את מספר השגיאה אני מוצא פשוט עם Err.Number, ואת התיאור עם Err.Description.
    אבל אני רוצה שהוא יציג לי את מה שכתוב בשורה שבה הוא נתקע. האם יש דרך לעשות את זה?
    את מספר השגיאה הבנתי שאפשר עם פונקציית Erl ולמספר את השורות בקוד, אבל אני רוצה שהוא גם יציג לי את כל השורה.
    תודה רבה!

    תגובה 1 תגובה אחרונה
    0
    • א מנותק
      א מנותק
      אבי
      כתב ב נערך לאחרונה על ידי אבי
      #2

      https://www.everythingaccess.com/vbwatchdog.asp
      נדמה לי שבגירסה החינמית יש בסך הכל הודעה אחת כשפותחים את הקובץ וזהו (אלא אם כן שודרג לאחרונה)

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

        @אבי תודה.
        אבל עקב כך שאני לא הולך להשקיע 200$ בפיצ'ר הזה (במיוחד שזה תוסף ולא קוד), יש למישהו רעיון זול יותר?
        תודה מראש.

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

          @ארי כתב בטיפול בשגיאה VBA אקסס:

          @אבי תודה.
          אבל עקב כך שאני לא הולך להשקיע 200$ בפיצ'ר הזה (במיוחד שזה תוסף ולא קוד), יש למישהו רעיון זול יותר?
          תודה מראש.

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

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

            @אבי אתה משתמש בזה?
            כי הורדתי את הקובץ והתקנתי ולא קרה כלום, הוא רק העתיק לי שתי קבצי DLL למחשב וזהו.
            איך משתמשים בזה?
            תודה.

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

              מה שכרגע עשיתי זה אחרי שאני מוסיף מספור שורות בשביל הפונקציה Erl כתבתי ככה:

              ErrStr = VBE.ActiveCodePane.CodeModule.Lines(1, VBE.ActiveCodePane.CodeModule.CountOfLines)
              ErrStr = Left(Mid(ErrStr, InStr(ErrStr, Erl & " ")), InStr(Mid(ErrStr, InStr(ErrStr, Erl & " ")), vbCrLf))
              Debug.Print "Error number: " & Err.Number & vbCrLf & "Description: " & Err.Description & vbCrLf & "Line: " & ErrStr
              

              כך שאם המספור שורה הוא 10 לדוג', אז הוא מחפש איפה כתוב "10 " ומביא את כל השורה. הבעיה היא שאם זה כתוב בעוד מקום לא בטוח שהקוד יחזיר את השורה הנכונה.
              אבל גם אם כן, לדעתי נראה ברור שזה קוד קצת 'עקום'... לכאו' אם כשיש באג וכשלוחצים על Debug הוא מדגיש את השורה הבעייתית בצהוב, זה אומר שהשורה רשומה לו איפשהו, השאלה היא איפה והאם אפשר לגשת לזה?
              תודה על כל הערה/הארה.

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

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

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

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