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

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

בירור | האם יש דרך להוספת הערות סקירה על הערות שוליים וסיום?

מתוזמן נעוץ נעול הועבר עזרה הדדית - וורד
74 פוסטים 5 כותבים 1.2k צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ש שמעון פרידנן

    @יעב-ץ

    @יעב-ץ כתב:

    קשה לי לפרט כאן.

    אז אין לי איך לעזור...

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

    @שמעון-פרידנן
    ולמה?
    דהיינו, זה משנה את הפתרון?

    ש ש 2 תגובות תגובה אחרונה
    0
    • י יעב"ץ

      @שמעון-פרידנן
      ולמה?
      דהיינו, זה משנה את הפתרון?

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

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

      תגובה 1 תגובה אחרונה
      2
      • י יעב"ץ

        @שמעון-פרידנן
        ולמה?
        דהיינו, זה משנה את הפתרון?

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

        @יעב-ץ כתב:

        ולמה?
        דהיינו, זה משנה את הפתרון?

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

        י תגובה 1 תגובה אחרונה
        0
        • ש שמעון פרידנן

          @יעב-ץ כתב:

          ולמה?
          דהיינו, זה משנה את הפתרון?

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

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

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

          ש תגובה 1 תגובה אחרונה
          0
          • י יעב"ץ

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

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

            @יעב-ץ כתב:

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

            כלומר? העמודים של ההערות הם רק בסוף ואתה רוצה שתוכל לראות את ההערות באותם עמודים בלי ללחוץ על ההפניה ולחזור אחורה?

            י תגובה 1 תגובה אחרונה
            0
            • ש שמעון פרידנן

              @יעב-ץ כתב:

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

              כלומר? העמודים של ההערות הם רק בסוף ואתה רוצה שתוכל לראות את ההערות באותם עמודים בלי ללחוץ על ההפניה ולחזור אחורה?

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

              @שמעון-פרידנן
              כן.
              ואגב, אפשר ליצור פריסה שמציגה את ההערות בסמוך להפניה?

              ש תגובה 1 תגובה אחרונה
              0
              • י יעב"ץ

                @שמעון-פרידנן
                כן.
                ואגב, אפשר ליצור פריסה שמציגה את ההערות בסמוך להפניה?

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

                @יעב-ץ כתב:

                ואגב, אפשר ליצור פריסה שמציגה את ההערות בסמוך להפניה?

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

                צ תגובה 1 תגובה אחרונה
                1
                • צ צבי צ

                  @יעב-ץ
                  אז תעשה קיצור דרך עם כפתור
                  קובץ > אפשרויות > התאמה אישית של רצועות הכלים

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

                  @צבי-צ
                  אפשר להוסיף סמלים לקיצורים האלו חוץ ממה שיש כרגע בהצעה?

                  d74a5f44-c347-4ce3-a679-193af6ea16cc-image.jpeg

                  תגובה 1 תגובה אחרונה
                  0
                  • ש שמעון פרידנן

                    @יעב-ץ כתב:

                    ואגב, אפשר ליצור פריסה שמציגה את ההערות בסמוך להפניה?

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

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

                    @שמעון-פרידנן כתב:

                    הם לא בסוף המסמך אלא בסוף "מקטע"

                    @יעב-ץ

                    ב'בקלות' של הרב יואל שילה יש אפשרות כזו:

                    f93b1322-4a5a-44d8-a474-f6d7fbd855d9-image.jpeg

                    ואם אתה מדבר רק על זמן העבודה אתה יכול להחליף בין ההערות שוליים להערות סיום [כלומר שההערות שוליים יהיו בסוף המקטע / הקובץ וההערות סיום בתחתית העמוד.]

                    aba9ab55-0df5-419b-aa0d-90869b3cd7f7-image.jpeg

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

                      איפה תיקיית הסמלים של וורד נמצאת?

                      תגובה 1 תגובה אחרונה
                      0
                      • ש שמעון פרידנן התייחס לנושא זה
                      • צ צבי צ

                        @יעב-ץ
                        נכון,
                        יצרתי מאקרו [ושיפצתי בעזרת קלוד].
                        נשאר לך רק לעשות קיצור דרך.

                        Sub הערת_סקירה_בהערת_שוליים()
                            Dim cmt As Comment
                            Dim txt As String
                        
                            txt = InputBox("הקלד את הערת הסקירה:", "הערת סקירה")
                            If txt = "" Then Exit Sub
                        
                            Options.DefaultHighlightColorIndex = wdYellow
                            Selection.Range.HighlightColorIndex = wdYellow
                        
                            ActiveWindow.View.SeekView = wdSeekMainDocument
                        
                            Selection.MoveRight Unit:=wdCharacter, Count:=1, Extend:=wdExtend
                        
                            Set cmt = Selection.Comments.Add(Range:=Selection.Range)
                            cmt.Range.Text = txt
                        
                            ' סגירת חלונית הסקירה - אחרי ההוספה
                            If ActiveWindow.Panes.Count > 1 Then
                                ActiveWindow.Panes(2).Close
                            End If
                            ActiveWindow.View.SeekView = wdSeekMainDocument
                        End Sub
                        
                        
                        י מנותק
                        י מנותק
                        יעב"ץ
                        כתב נערך לאחרונה על ידי
                        #44

                        @צבי-צ

                        אני משתמש בזה וזה מעולה.
                        יש בזה 3 באגים:

                        1. זה משנה את הזום, בלי לשנות את הגדרת הזום.
                          אני ב'רוחב עמוד', וזה מגדיל מאד בלי לשנות את ההגדרה.
                        2. כשזה יוצר את ההערה, זה קופץ לגוף המסמך, ונשאר שם, במקום להשאר בהערות סיום.
                        3. בעת היצירה, נפתח חלון תחתי של כל ההערות, לכמה שניות.
                        צ תגובה 1 תגובה אחרונה
                        0
                        • י יעב"ץ

                          @צבי-צ

                          אני משתמש בזה וזה מעולה.
                          יש בזה 3 באגים:

                          1. זה משנה את הזום, בלי לשנות את הגדרת הזום.
                            אני ב'רוחב עמוד', וזה מגדיל מאד בלי לשנות את ההגדרה.
                          2. כשזה יוצר את ההערה, זה קופץ לגוף המסמך, ונשאר שם, במקום להשאר בהערות סיום.
                          3. בעת היצירה, נפתח חלון תחתי של כל ההערות, לכמה שניות.
                          צ מנותק
                          צ מנותק
                          צבי צ
                          כתב נערך לאחרונה על ידי
                          #45

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

                          https://mitmachim.top/topic/102457/להורדה-מאקרו-לניהול-הערות-סקירה-על-הערות-שוליים-סיום

                          י 2 תגובות תגובה אחרונה
                          0
                          • צ צבי צ

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

                            https://mitmachim.top/topic/102457/להורדה-מאקרו-לניהול-הערות-סקירה-על-הערות-שוליים-סיום

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

                            @צבי-צ
                            אבל איך אני מוריד את זה, דהיינו, איך להשתמש אחרי ההורדה?

                            צ תגובה 1 תגובה אחרונה
                            0
                            • י יעב"ץ

                              @צבי-צ
                              אבל איך אני מוריד את זה, דהיינו, איך להשתמש אחרי ההורדה?

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

                              @יעב-ץ
                              תסגור את כל המסמכים שפתוחים בוורד.
                              תוריד את הקובץ המצורף [תוסיף את האות T בסוף] תשמור אותו ע"י הקובץ ש@שמעון-פרידנן בנה,
                              תפעיל אותו ותחכה שיסיים.
                              עכשיו תסמן את המקום בהערת שוליים ותלחץ ALT F8 ותבחר ShowFootnoteComments והפעל.
                              וכמו שכתבו תעשה קיצור דרך ויהיה לך הרבה יותר קל.

                              Install-Word-Comments.ba

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

                                @יעב-ץ
                                תסגור את כל המסמכים שפתוחים בוורד.
                                תוריד את הקובץ המצורף [תוסיף את האות T בסוף] תשמור אותו ע"י הקובץ ש@שמעון-פרידנן בנה,
                                תפעיל אותו ותחכה שיסיים.
                                עכשיו תסמן את המקום בהערת שוליים ותלחץ ALT F8 ותבחר ShowFootnoteComments והפעל.
                                וכמו שכתבו תעשה קיצור דרך ויהיה לך הרבה יותר קל.

                                Install-Word-Comments.ba

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

                                @צבי-צ
                                לא הבנתי מילה.
                                אפשר לקבל את הטקסט של המאקרו?
                                זה הכי פשוט.

                                צ תגובה 1 תגובה אחרונה
                                0
                                • י יעב"ץ

                                  @צבי-צ
                                  לא הבנתי מילה.
                                  אפשר לקבל את הטקסט של המאקרו?
                                  זה הכי פשוט.

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

                                  @יעב-ץ
                                  בבקשה, זה נמצא בתוך הקובץ, אבל צריך לדעת איך לשמור אותו כי זה לא מאקרו רגיל.

                                  Option Explicit
                                  
                                  '=============================================================
                                  ' הערות סקירה על הפניות להערות שוליים / הערות סיום
                                  ' מודל: ראש אחד לכל הערה + תגובותיו.
                                  ' צביעה צהובה של המילים המסומנות (רק במסמך, לא בטופס).
                                  '=============================================================
                                  
                                  '-------------------------------------------------------------
                                  ' סעיף 1: נקודת כניסה (מכיר את הטופס)
                                  '-------------------------------------------------------------
                                  Private m_CurrentForm As frmComments
                                  
                                  Public Sub ShowFootnoteComments()
                                      Dim idx As Long, isEnd As Boolean
                                      If Not CurrentFootnoteIndex(idx, isEnd) Then
                                          MsgBox "יש להציב את הסמן בתוך הערת שוליים או הערת סיום.", _
                                                 vbInformation, "הצגת הערות סקירה"
                                          Exit Sub
                                      End If
                                  
                                      If Not m_CurrentForm Is Nothing Then
                                          If m_CurrentForm.Visible Then
                                              m_CurrentForm.LoadNote idx, isEnd
                                              m_CurrentForm.Show vbModeless
                                              Exit Sub
                                          End If
                                      End If
                                  
                                      Set m_CurrentForm = New frmComments
                                      m_CurrentForm.LoadNote idx, isEnd
                                      m_CurrentForm.Show vbModeless
                                  End Sub
                                  
                                  '-------------------------------------------------------------
                                  ' סעיף 2: זיהוי ההערה שהסמן נמצא בתוכה
                                  '-------------------------------------------------------------
                                  Public Function CurrentFootnoteIndex(ByRef idx As Long, ByRef isEnd As Boolean) As Boolean
                                      idx = 0
                                      isEnd = False
                                  
                                      Dim st As WdStoryType
                                      st = Selection.StoryType
                                  
                                      Dim selStart As Long
                                      selStart = Selection.Start
                                  
                                      If st = wdFootnotesStory Then
                                          Dim fn As Word.Footnote
                                          For Each fn In ThisDocument.Footnotes
                                              If selStart >= fn.Range.Start And selStart <= fn.Range.End Then
                                                  idx = fn.Index
                                                  isEnd = False
                                                  CurrentFootnoteIndex = True
                                                  Exit Function
                                              End If
                                          Next fn
                                      ElseIf st = wdEndnotesStory Then
                                          Dim en As Word.Endnote
                                          For Each en In ThisDocument.Endnotes
                                              If selStart >= en.Range.Start And selStart <= en.Range.End Then
                                                  idx = en.Index
                                                  isEnd = True
                                                  CurrentFootnoteIndex = True
                                                  Exit Function
                                              End If
                                          Next en
                                      End If
                                  End Function
                                  
                                  '-------------------------------------------------------------
                                  ' סעיף 3: איסוף השרשור (ראש + תגובות) לפי טווח ההפניה
                                  '-------------------------------------------------------------
                                  Public Function GetThreadForNote(ByVal idx As Long, ByVal isEnd As Boolean) As Collection
                                      Dim result As New Collection
                                  
                                      Dim refStart As Long, refEnd As Long
                                      If isEnd Then
                                          refStart = ThisDocument.Endnotes(idx).Reference.Start
                                          refEnd = ThisDocument.Endnotes(idx).Reference.End
                                      Else
                                          refStart = ThisDocument.Footnotes(idx).Reference.Start
                                          refEnd = ThisDocument.Footnotes(idx).Reference.End
                                      End If
                                  
                                      Dim c As Word.Comment
                                      For Each c In ThisDocument.Comments
                                          On Error Resume Next
                                          Dim scStart As Long, scEnd As Long
                                          scStart = c.Scope.Start
                                          scEnd = c.Scope.End
                                          On Error GoTo 0
                                  
                                          If scStart <= refEnd And scEnd >= refStart Then
                                              result.Add c
                                          End If
                                      Next c
                                  
                                      Set GetThreadForNote = result
                                  End Function
                                  
                                  '-------------------------------------------------------------
                                  ' סעיף 4: פעולות
                                  '-------------------------------------------------------------
                                  
                                  ' הוספת הערה ראשית (רק אם אין עדיין ראש).
                                  ' צובע את המילים המסומנות בהערת השוליים במרקר צהוב.
                                  ' נשלחים: idx, isEnd (מיקום ההערה), והטקסט של ההערה + כותב.
                                  ' ה-Symbol Selection נלקח כאן מתוך הערת השוליים.
                                  Public Function AddRootComment(ByVal idx As Long, ByVal isEnd As Boolean, _
                                                                 ByVal text As String, _
                                                                 Optional ByVal author As String = "") As Boolean
                                      AddRootComment = False
                                  
                                      ' אסור שני ראשים: בדוק שאין כבר Comment על הטווח
                                      Dim existing As Collection
                                      Set existing = GetThreadForNote(idx, isEnd)
                                      If existing.Count > 0 Then
                                          Exit Function
                                      End If
                                  
                                      ' צביעה צהובה של המילים המסומנות בהערת השוליים (אם יש סימון)
                                      On Error Resume Next
                                      If Selection.StoryType = wdFootnotesStory Or Selection.StoryType = wdEndnotesStory Then
                                          If Selection.Range.Start <> Selection.Range.End Then   ' יש סימון
                                              Selection.Range.HighlightColorIndex = wdYellow
                                          End If
                                      End If
                                      On Error GoTo 0
                                  
                                      ' יצירת ההערה על ההפניה
                                      On Error GoTo Fail
                                      Dim rng As Word.Range
                                      If isEnd Then
                                          Set rng = ThisDocument.Endnotes(idx).Reference.Duplicate
                                      Else
                                          Set rng = ThisDocument.Footnotes(idx).Reference.Duplicate
                                      End If
                                  
                                      Dim c As Word.Comment
                                      Set c = ThisDocument.Comments.Add(rng, text)
                                      If Len(author) > 0 Then c.author = author
                                  
                                      AddRootComment = True
                                      Exit Function
                                  Fail:
                                      AddRootComment = False
                                  End Function
                                  
                                  ' הוספת תגובה לראש הקיים (נוצר על אותו טווח)
                                  Public Function AddReplyToNote(ByVal idx As Long, ByVal isEnd As Boolean, _
                                                                 ByVal text As String, _
                                                                 Optional ByVal author As String = "") As Boolean
                                      On Error GoTo Fail
                                  
                                      Dim th As Collection
                                      Set th = GetThreadForNote(idx, isEnd)
                                      If th.Count = 0 Then
                                          AddReplyToNote = False
                                          Exit Function
                                      End If
                                  
                                      Dim root As Word.Comment
                                      Set root = th(1)
                                  
                                      Dim rep As Word.Comment
                                      Set rep = root.Replies.Add(root.Scope, text)
                                      If Len(author) > 0 Then rep.author = author
                                  
                                      AddReplyToNote = True
                                      Exit Function
                                  Fail:
                                      AddReplyToNote = False
                                  End Function
                                  
                                  ' מחיקת שרשור שלם (ראש + כל תגובותיו)
                                  Public Function DeleteThread(ByVal idx As Long, ByVal isEnd As Boolean) As Boolean
                                      On Error GoTo Fail
                                  
                                      Dim th As Collection
                                      Set th = GetThreadForNote(idx, isEnd)
                                      If th.Count = 0 Then
                                          DeleteThread = False
                                          Exit Function
                                      End If
                                  
                                      Dim i As Long
                                      For i = th.Count To 1 Step -1
                                          th(i).Delete
                                      Next i
                                  
                                      DeleteThread = True
                                      Exit Function
                                  Fail:
                                      DeleteThread = False
                                  End Function
                                  
                                  
                                  
                                  י תגובה 1 תגובה אחרונה
                                  0
                                  • צ צבי צ

                                    @יעב-ץ
                                    בבקשה, זה נמצא בתוך הקובץ, אבל צריך לדעת איך לשמור אותו כי זה לא מאקרו רגיל.

                                    Option Explicit
                                    
                                    '=============================================================
                                    ' הערות סקירה על הפניות להערות שוליים / הערות סיום
                                    ' מודל: ראש אחד לכל הערה + תגובותיו.
                                    ' צביעה צהובה של המילים המסומנות (רק במסמך, לא בטופס).
                                    '=============================================================
                                    
                                    '-------------------------------------------------------------
                                    ' סעיף 1: נקודת כניסה (מכיר את הטופס)
                                    '-------------------------------------------------------------
                                    Private m_CurrentForm As frmComments
                                    
                                    Public Sub ShowFootnoteComments()
                                        Dim idx As Long, isEnd As Boolean
                                        If Not CurrentFootnoteIndex(idx, isEnd) Then
                                            MsgBox "יש להציב את הסמן בתוך הערת שוליים או הערת סיום.", _
                                                   vbInformation, "הצגת הערות סקירה"
                                            Exit Sub
                                        End If
                                    
                                        If Not m_CurrentForm Is Nothing Then
                                            If m_CurrentForm.Visible Then
                                                m_CurrentForm.LoadNote idx, isEnd
                                                m_CurrentForm.Show vbModeless
                                                Exit Sub
                                            End If
                                        End If
                                    
                                        Set m_CurrentForm = New frmComments
                                        m_CurrentForm.LoadNote idx, isEnd
                                        m_CurrentForm.Show vbModeless
                                    End Sub
                                    
                                    '-------------------------------------------------------------
                                    ' סעיף 2: זיהוי ההערה שהסמן נמצא בתוכה
                                    '-------------------------------------------------------------
                                    Public Function CurrentFootnoteIndex(ByRef idx As Long, ByRef isEnd As Boolean) As Boolean
                                        idx = 0
                                        isEnd = False
                                    
                                        Dim st As WdStoryType
                                        st = Selection.StoryType
                                    
                                        Dim selStart As Long
                                        selStart = Selection.Start
                                    
                                        If st = wdFootnotesStory Then
                                            Dim fn As Word.Footnote
                                            For Each fn In ThisDocument.Footnotes
                                                If selStart >= fn.Range.Start And selStart <= fn.Range.End Then
                                                    idx = fn.Index
                                                    isEnd = False
                                                    CurrentFootnoteIndex = True
                                                    Exit Function
                                                End If
                                            Next fn
                                        ElseIf st = wdEndnotesStory Then
                                            Dim en As Word.Endnote
                                            For Each en In ThisDocument.Endnotes
                                                If selStart >= en.Range.Start And selStart <= en.Range.End Then
                                                    idx = en.Index
                                                    isEnd = True
                                                    CurrentFootnoteIndex = True
                                                    Exit Function
                                                End If
                                            Next en
                                        End If
                                    End Function
                                    
                                    '-------------------------------------------------------------
                                    ' סעיף 3: איסוף השרשור (ראש + תגובות) לפי טווח ההפניה
                                    '-------------------------------------------------------------
                                    Public Function GetThreadForNote(ByVal idx As Long, ByVal isEnd As Boolean) As Collection
                                        Dim result As New Collection
                                    
                                        Dim refStart As Long, refEnd As Long
                                        If isEnd Then
                                            refStart = ThisDocument.Endnotes(idx).Reference.Start
                                            refEnd = ThisDocument.Endnotes(idx).Reference.End
                                        Else
                                            refStart = ThisDocument.Footnotes(idx).Reference.Start
                                            refEnd = ThisDocument.Footnotes(idx).Reference.End
                                        End If
                                    
                                        Dim c As Word.Comment
                                        For Each c In ThisDocument.Comments
                                            On Error Resume Next
                                            Dim scStart As Long, scEnd As Long
                                            scStart = c.Scope.Start
                                            scEnd = c.Scope.End
                                            On Error GoTo 0
                                    
                                            If scStart <= refEnd And scEnd >= refStart Then
                                                result.Add c
                                            End If
                                        Next c
                                    
                                        Set GetThreadForNote = result
                                    End Function
                                    
                                    '-------------------------------------------------------------
                                    ' סעיף 4: פעולות
                                    '-------------------------------------------------------------
                                    
                                    ' הוספת הערה ראשית (רק אם אין עדיין ראש).
                                    ' צובע את המילים המסומנות בהערת השוליים במרקר צהוב.
                                    ' נשלחים: idx, isEnd (מיקום ההערה), והטקסט של ההערה + כותב.
                                    ' ה-Symbol Selection נלקח כאן מתוך הערת השוליים.
                                    Public Function AddRootComment(ByVal idx As Long, ByVal isEnd As Boolean, _
                                                                   ByVal text As String, _
                                                                   Optional ByVal author As String = "") As Boolean
                                        AddRootComment = False
                                    
                                        ' אסור שני ראשים: בדוק שאין כבר Comment על הטווח
                                        Dim existing As Collection
                                        Set existing = GetThreadForNote(idx, isEnd)
                                        If existing.Count > 0 Then
                                            Exit Function
                                        End If
                                    
                                        ' צביעה צהובה של המילים המסומנות בהערת השוליים (אם יש סימון)
                                        On Error Resume Next
                                        If Selection.StoryType = wdFootnotesStory Or Selection.StoryType = wdEndnotesStory Then
                                            If Selection.Range.Start <> Selection.Range.End Then   ' יש סימון
                                                Selection.Range.HighlightColorIndex = wdYellow
                                            End If
                                        End If
                                        On Error GoTo 0
                                    
                                        ' יצירת ההערה על ההפניה
                                        On Error GoTo Fail
                                        Dim rng As Word.Range
                                        If isEnd Then
                                            Set rng = ThisDocument.Endnotes(idx).Reference.Duplicate
                                        Else
                                            Set rng = ThisDocument.Footnotes(idx).Reference.Duplicate
                                        End If
                                    
                                        Dim c As Word.Comment
                                        Set c = ThisDocument.Comments.Add(rng, text)
                                        If Len(author) > 0 Then c.author = author
                                    
                                        AddRootComment = True
                                        Exit Function
                                    Fail:
                                        AddRootComment = False
                                    End Function
                                    
                                    ' הוספת תגובה לראש הקיים (נוצר על אותו טווח)
                                    Public Function AddReplyToNote(ByVal idx As Long, ByVal isEnd As Boolean, _
                                                                   ByVal text As String, _
                                                                   Optional ByVal author As String = "") As Boolean
                                        On Error GoTo Fail
                                    
                                        Dim th As Collection
                                        Set th = GetThreadForNote(idx, isEnd)
                                        If th.Count = 0 Then
                                            AddReplyToNote = False
                                            Exit Function
                                        End If
                                    
                                        Dim root As Word.Comment
                                        Set root = th(1)
                                    
                                        Dim rep As Word.Comment
                                        Set rep = root.Replies.Add(root.Scope, text)
                                        If Len(author) > 0 Then rep.author = author
                                    
                                        AddReplyToNote = True
                                        Exit Function
                                    Fail:
                                        AddReplyToNote = False
                                    End Function
                                    
                                    ' מחיקת שרשור שלם (ראש + כל תגובותיו)
                                    Public Function DeleteThread(ByVal idx As Long, ByVal isEnd As Boolean) As Boolean
                                        On Error GoTo Fail
                                    
                                        Dim th As Collection
                                        Set th = GetThreadForNote(idx, isEnd)
                                        If th.Count = 0 Then
                                            DeleteThread = False
                                            Exit Function
                                        End If
                                    
                                        Dim i As Long
                                        For i = th.Count To 1 Step -1
                                            th(i).Delete
                                        Next i
                                    
                                        DeleteThread = True
                                        Exit Function
                                    Fail:
                                        DeleteThread = False
                                    End Function
                                    
                                    
                                    
                                    י מנותק
                                    י מנותק
                                    יעב"ץ
                                    כתב נערך לאחרונה על ידי
                                    #50

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

                                    צ י ש 3 תגובות תגובה אחרונה
                                    0
                                    • י יעב"ץ

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

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

                                      @יעב-ץ
                                      אני לא הצלחתי לשמור אותו ולכן ביקשתי מקלוד שיצור לי את הקובץ שצרפתי למעלה, תשנה את הסיומת שלו לBAT ותפעיל אותו.

                                      צריך שהוא יהיה באותה תיקייה עם הקובץ הערות-סקירה-מדומות.docm.

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

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • י יעב"ץ

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

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

                                        יעב-ץ כתב:

                                        ומה זה שונה ממאקרו רגיל?

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • י יעב"ץ

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

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

                                          @יעב-ץ
                                          תבדוק את מה שכתבתי בשרשור של המאקרו, זה אמור להיות הכי פשוט
                                          או שתגיד לי מה הפירוש לא הצלחת להתקין?

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

                                          שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

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

                                          בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                                          הרשמה התחברות

                                          • התחברות

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

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