דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
לוגו מותג
  1. דף הבית
  2. תוכנות
  3. יישומי אופיס
  4. אקסל
  5. עזרה הדדית - אקסל
  6. בקשת מידע | מאקרו שמופעל בשינוי תא מסוים

בקשת מידע | מאקרו שמופעל בשינוי תא מסוים

מתוזמן נעוץ נעול הועבר עזרה הדדית - אקסל
13 פוסטים 3 כותבים 105 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א ארפכשד

    ניסיתי לכתוב את הקוד הבא

    Private Sub Worksheet_Change(ByVal Target As Range)   
        If Range("l9") < 0 Then
        MsgBox "שלום"
        End If
    End Sub
    

    אך זה מפעיל את המאקרו בכל שינוי תא
    ובקוד הבא (שלקחתי מכאן)

    Private Sub Worksheet_Change(ByVal Target As Range)
                If Target.Address = "$l$9" Then
                 'Do something
              
        If Range("l9") < 0 Then
        MsgBox "שלום"
        End If
       
       End If
    End Sub
    

    לא קורה כלום גם בשינוי התא המצוין

    א מנותק
    א מנותק
    אופיר123
    כתב נערך לאחרונה על ידי
    #2

    @ארפכשד תשנה ל-

    If Target.Address = "$L$9" Then
    

    לא יודע למה צריך אות גדולה, כשעושים

    MsgBox Target.address
    

    הוא מציג אות קטנה, וגם ב Range אתה קורא לו באות קטנה

    א תגובה 1 תגובה אחרונה
    0
    • א אופיר123

      @ארפכשד תשנה ל-

      If Target.Address = "$L$9" Then
      

      לא יודע למה צריך אות גדולה, כשעושים

      MsgBox Target.address
      

      הוא מציג אות קטנה, וגם ב Range אתה קורא לו באות קטנה

      א מנותק
      א מנותק
      ארפכשד
      כתב נערך לאחרונה על ידי
      #3

      @אופיר123 ככה בדיוק כתבתי לא הבנתי היכן השינוי

      א תגובה 1 תגובה אחרונה
      0
      • א ארפכשד

        @אופיר123 ככה בדיוק כתבתי לא הבנתי היכן השינוי

        א מנותק
        א מנותק
        אופיר123
        כתב נערך לאחרונה על ידי אופיר123
        #4

        @ארפכשד אות L גדולה

        ראית את הספויילר למעלה?

        א תגובה 1 תגובה אחרונה
        0
        • א אופיר123

          @ארפכשד אות L גדולה

          ראית את הספויילר למעלה?

          א מנותק
          א מנותק
          ארפכשד
          כתב נערך לאחרונה על ידי
          #5

          @אופיר123 לא חשבתי שזה משנה משהו
          ובכל מקרה שיניתי וזה עדיין לא עובד

          א תגובה 1 תגובה אחרונה
          0
          • א ארפכשד

            @אופיר123 לא חשבתי שזה משנה משהו
            ובכל מקרה שיניתי וזה עדיין לא עובד

            א מנותק
            א מנותק
            אופיר123
            כתב נערך לאחרונה על ידי אופיר123
            #6

            @ארפכשד אצלי שיניתי ועבד

            שמת לב שL9 צריך להיות קטן מאפס

            א תגובה 1 תגובה אחרונה
            0
            • א אופיר123

              @ארפכשד אצלי שיניתי ועבד

              שמת לב שL9 צריך להיות קטן מאפס

              א מנותק
              א מנותק
              ארפכשד
              כתב נערך לאחרונה על ידי
              #7

              @אופיר123
              עכשיו הבנתי..
              זה פועל רק אם משנים את תוכן התא ידנית
              אבל אם בתא יש נוסחה והתוכן משתנה אוטומטי (למשל אם כתוב שם =A1 ובתא A1 השתנה התוכן) אז זה לא פועל..
              יש פתרון לזה?

              ד א 2 תגובות תגובה אחרונה
              0
              • א ארפכשד

                @אופיר123
                עכשיו הבנתי..
                זה פועל רק אם משנים את תוכן התא ידנית
                אבל אם בתא יש נוסחה והתוכן משתנה אוטומטי (למשל אם כתוב שם =A1 ובתא A1 השתנה התוכן) אז זה לא פועל..
                יש פתרון לזה?

                ד מנותק
                ד מנותק
                דאבל
                כתב נערך לאחרונה על ידי
                #8

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

                arcivaty@gmail.com

                א תגובה 1 תגובה אחרונה
                0
                • א ארפכשד

                  @אופיר123
                  עכשיו הבנתי..
                  זה פועל רק אם משנים את תוכן התא ידנית
                  אבל אם בתא יש נוסחה והתוכן משתנה אוטומטי (למשל אם כתוב שם =A1 ובתא A1 השתנה התוכן) אז זה לא פועל..
                  יש פתרון לזה?

                  א מנותק
                  א מנותק
                  אופיר123
                  כתב נערך לאחרונה על ידי
                  #9

                  @ארפכשד גם עם אות קטנה עבד לך? כי לי לא

                  א תגובה 1 תגובה אחרונה
                  0
                  • א אופיר123

                    @ארפכשד גם עם אות קטנה עבד לך? כי לי לא

                    א מנותק
                    א מנותק
                    ארפכשד
                    כתב נערך לאחרונה על ידי
                    #10

                    @אופיר123 לא רק אחרי ששינתי.
                    באמת שכחתי להודות לך.. תודה!!

                    תגובה 1 תגובה אחרונה
                    1
                    • ד דאבל

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

                      א מנותק
                      א מנותק
                      ארפכשד
                      כתב נערך לאחרונה על ידי
                      #11

                      @דאבל אשמח אם תפרט יותר

                      א תגובה 1 תגובה אחרונה
                      0
                      • א ארפכשד

                        @דאבל אשמח אם תפרט יותר

                        א מנותק
                        א מנותק
                        אופיר123
                        כתב נערך לאחרונה על ידי
                        #12

                        @ארפכשד נראה לי שתעשה מאקרו אירוע שבכל פעם שתא כלשהוא בחוברת העבודה משתנה המאקרו בודק אם הערך בתא L9 השתנה (כי אף פעם לא יהיה שינוי בתוצאת הנוסחה אם כלום לא ישתנה, אז אחרי כל שינוי בקובץ לבדוק אם תוצאת הנוסחה השתנתה ואם כן יופעל המאקרו)

                        איך לבדוק את הערך האם הוא השתנה זה קצת מורכב עי' כאן

                        א תגובה 1 תגובה אחרונה
                        0
                        • א אופיר123

                          @ארפכשד נראה לי שתעשה מאקרו אירוע שבכל פעם שתא כלשהוא בחוברת העבודה משתנה המאקרו בודק אם הערך בתא L9 השתנה (כי אף פעם לא יהיה שינוי בתוצאת הנוסחה אם כלום לא ישתנה, אז אחרי כל שינוי בקובץ לבדוק אם תוצאת הנוסחה השתנתה ואם כן יופעל המאקרו)

                          איך לבדוק את הערך האם הוא השתנה זה קצת מורכב עי' כאן

                          א מנותק
                          א מנותק
                          ארפכשד
                          כתב נערך לאחרונה על ידי
                          #13

                          תשובת @ רובי בוט

                          נקודות חשובות:

                          אם הערך ב-L9 משתנה באמצעות נוסחה (ולא בעריכה ישירה), המאקרו לא יופעל כי Worksheet_Change מתרחש רק כשמשנים את התא ידנית או דרך קוד. במקרה כזה יש להשתמש ב-Worksheet_Calculate או לבדוק שינויים באופן שונה.
                          אם הערך ב-L9 נקבע על ידי נוסחה ואתה רוצה שההודעה תופיע כשהערך הופך לשלילי, אפשר להשתמש בקוד כזה ב-Worksheet_Calculate:

                          vba
                          Dim prevValue As Variant
                          
                          Private Sub Worksheet_Calculate()
                              Dim currValue As Variant
                              currValue = Me.Range("L9").Value
                          
                              If IsNumeric(currValue) Then
                                  If currValue < 0 Then
                                      If prevValue >= 0 Or IsEmpty(prevValue) Then
                                          MsgBox "שלום"
                                      End If
                                  End If
                              End If
                          
                          prevValue = currValue
                              End Sub
                          

                          כאן נשמר הערך הקודם ב-prevValue כדי להציג את ההודעה רק כאשר הערך עובר להיות שלילי (מכחול או חיובי לשלילי).

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

                          • התחברות

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

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