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

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

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

התייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל

מתוזמן נעוץ נעול הועבר תכנות
74 פוסטים 4 כותבים 3.3k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • פ מנותק
    פ מנותק
    פלורידה
    השיב לOdedDvir ב נערך לאחרונה על ידי פלורידה
    #63

    @odeddvir
    כל קובץ שפתחתי אותו פעם אחת על ידי GetObject יותר לא נפתח לי כרגיל, כלומר הוא ירוץ (אני אראה קובץ מוסתר בשולחן העבודה,) אך אינו מוצג.

    631daada-a1a4-4c90-8e60-6b67f0a0f7f4-image.png

    ניסיתי להגדיר ככה:

    DataWB.Visible = True

    אך קיבלתי שגיאה: Object doesn't support this property or method

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

      @פלורידה מעניין... לא הצלחתי לשחזר את התופעה אצלי.🤔
      בכל מקרה, פתח את הקובץ דאטא, עבור לעורך ה-VBA על ידי מקש F11 ובחלון ה- Immediate למטה תריץ:

      ThisWorkbook.Windows(1).Visible = True
      

      האם כעת מוצג?

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

        @odeddvir אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:

        האם כעת מוצג?

        אכן מוצג
        מה המספר (1) מבטא?
        על מנת שאדע כיצד לשלב אותו בקוד

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

          @פלורידה את אינדקס החלון מתוך החלונות הפעילים. ניתן לציין לפי מספר או לפי כותרת:

          Application.Windows(1).Caption = "שמוליק"
          Application.Windows("שמוליק").ActiveSheet.Calculate
          
          פ תגובה 1 תגובה אחרונה
          0
          • פ מנותק
            פ מנותק
            פלורידה
            השיב לOdedDvir ב נערך לאחרונה על ידי
            #67

            @odeddvir אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:

            Application.Windows(1).Caption = "שמוליק"

            אם אני מבין נכון, החלון הפעיל נחשב (1) וכן הלאה.
            סביר להניח שכאשר אני פותח חלון על ידי vba הוא לא נחשב פעיל, ולכן הוא מקבל את הערך האחרון מבין החלונות הקיימים

            בהתחשב בכך, צריך לחשב כמה חלונות פעילים, ולתת לחלון של המסד את הערך האחרון.

            כאשר הוא יהפך לפעיל הוא יחזור להיות (1) וכל הקוד ישתבש? ואם נתתי לו שם, זה ישנה את העובדה הזו?

            הפיתרון לתת כותרת, גם היא צריכה קודם לדעת את המיקום באינדקס

            אני מרגיש שדיברתי יותר מידי... מה חסר לי בהבנה?

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

              @פלורידה הבעיה שציינת היתה שבפתיחה של הדאטא - החלון מוסתר. לכן נתתי לך את הפתרון הנ"ל, והתכוונתי שתוסיף את הקוד הזה בארוע פתיחה של קובץ הדאטא, ולא בתוכנה. כך שאין לך מה להסתבך עם אינדקסים.
              בלאו הכי אני עדיין תוהה מה גורם לתופעה...

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

                @odeddvir בוודאי יש לך גירסת אופיס 365
                לי יש 2019

                הצורה שהכנסתי את זה היא כך:

                Sub open1()
                Set DataWB = GetObject("C:\Desktop\Hadran_Data.xlsx")
                DataWB.Visible = True
                End Sub
                

                וכך

                Sub סגור()
                DataWB.Visible = True
                DataWB.Close SaveChanges:=True
                End Sub
                

                בריצה בחלון המיידי מתקבלת השגיאה הבאה:

                Run-time error '424':

                Object required

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

                  @פלורידה אני בספק אם גרסת האופיס משנה כאן.
                  אני לא מבין מה אתה מנסה לעשות. לפי הקוד שצירפת, אתה רוצה להציג את חלון הדאטא מתוך התוכנה. אני הבנתי שלא.
                  אם כן, פשוט תפתח את החוברת כרגיל:

                  Sub open1()
                  Set DataWB = Workbooks.Open("C:\Desktop\Hadran_Data.xlsx")
                  End Sub
                  

                  ותו לא מידי.

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

                    @odeddvir אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:

                    לפי הקוד שצירפת, אתה רוצה להציג את חלון הדאטא מתוך התוכנה. אני הבנתי שלא.

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

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

                      @פלורידה אם כן, מדוע אתה מנסה להציג אותו כבר בפתיחה?
                      בכל מקרה, לאובייקט Workbook אין מאפיין Visible. אתה צריך להשתמש באחד מצאצאים שלו.
                      למשל:

                      DataWB.Sheets(1).Visible = True
                      

                      או

                      DataWB.Windows(1).Visible = True
                      
                      תגובה 1 תגובה אחרונה
                      2
                      • פ מנותק
                        פ מנותק
                        פלורידה
                        השיב לOdedDvir ב נערך לאחרונה על ידי
                        #73

                        @odeddvir אמר בהתייעצות | בניית מסד נתונים לתכנת "הדרן עלך" | אקסל:

                        Set DataWB = GetObject("Hadran_Data.xlsx")

                        ישנו הסבר מדוע אינו פועל בנתיב יחסי?

                        Set DataWB = GetObject("\Hadran_Data.xlsx")
                        
                        OdedDvirO תגובה 1 תגובה אחרונה
                        0
                        • OdedDvirO מנותק
                          OdedDvirO מנותק
                          OdedDvir
                          השיב לפלורידה ב נערך לאחרונה על ידי
                          #74

                          @פלורידה אמור לעבוד אם בתיקיית השורש יש את הקובץ.
                          במחשבה שניה, יתכן מאד ואם מדובר בכונן שבו מערכת ההפעלה זה לא יעבוד, כי בד"כ תיקית השורש מוגנת על ידי המערכת, ודורשת הרשאות מיוחדות כדי לבצע בה שינויים.

                          תגובה 1 תגובה אחרונה
                          2
                          • dovidD dovid העביר נושא זה מ-תכנות ב-

                          • 1
                          • 2
                          • 3
                          • 4
                          בא תתחבר לדף היומי!
                          • התחברות

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

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