דילוג לתוכן
  • חוקי הפורום
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • 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. שיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.

שיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.

מתוזמן נעוץ נעול הועבר עזרה הדדית - וורד
300 פוסטים 31 כותבים 24.6k צפיות 32 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • י יוסף123

    מצרף מאקרו לתיקון כתיב חסר,
    הוא מחולק לשתי פקודות בגלל שהוא ארוך מידי
    ‏‏מאקרו לתיקון כתיב חסר סיוון תשפג.docm

    המאקרו גם מחליף כל גרשיים כפולים לגרש בודד מלבד באמצע מילה.

    P מנותק
    P מנותק
    pcinfogmach
    מדריכים
    כתב ב נערך לאחרונה על ידי
    #160

    @יוסף123 כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

    המאקרו גם מחליף כל גרשיים כפולים לגרש

    למה?

    גמ"ח עזרה וייעוץ בנושאי מחשבים

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

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

      P מנותק
      P מנותק
      pcinfogmach
      מדריכים
      כתב ב נערך לאחרונה על ידי pcinfogmach
      #161

      @menajemmendel
      הוא לא אמור למחוק את שאר הטאבים כי הוא מוחק רק טאב שמגיע מיד אחרי מעבר שורה ידני.
      בדקת את זה בגירסה האחרונה של התוסף?
      אם אתה לא אוהב את הרעיון של מעבר שורה ידני אתה יכול להסויף לפניו רווח של אפס ChrW(8203) כסימן

      גמ"ח עזרה וייעוץ בנושאי מחשבים

      menajemmendelM תגובה 1 תגובה אחרונה
      0
      • P pcinfogmach

        @menajemmendel
        הוא לא אמור למחוק את שאר הטאבים כי הוא מוחק רק טאב שמגיע מיד אחרי מעבר שורה ידני.
        בדקת את זה בגירסה האחרונה של התוסף?
        אם אתה לא אוהב את הרעיון של מעבר שורה ידני אתה יכול להסויף לפניו רווח של אפס ChrW(8203) כסימן

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

        @pcinfogmach כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

        @menajemmendel
        הוא לא אמור למחוק את שאר הטאבים כי הוא מוחק רק טאב שמגיע מיד אחרי מעבר שורה ידני.
        בדקת את זה בגירסה האחרונה של התוסף?
        אם אתה לא אוהב את הרעיון של מעבר שורה ידני אתה יכול להסויף לפניו רווח של אפס ChrW(8203) כסימן

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

          With para
                .ParagraphFormat.TabStops.ClearAll
                    .ParagraphFormat.TabStops.Add Position:=middlePosition, Alignment:=wdAlignTabCenter
        '                If .Previous.Text = vbVerticalTab & vbTab Then .Previous.Delete Count:=2
                             If .Previous.Text = vbVerticalTab Then .Previous.Delete
                        .InsertBefore vbVerticalTab & vbTab
                End With
        

        אתה רואה בשורה 2 CLEARALL

        P תגובה 1 תגובה אחרונה
        0
        • menajemmendelM menajemmendel

          @pcinfogmach כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

          @menajemmendel
          הוא לא אמור למחוק את שאר הטאבים כי הוא מוחק רק טאב שמגיע מיד אחרי מעבר שורה ידני.
          בדקת את זה בגירסה האחרונה של התוסף?
          אם אתה לא אוהב את הרעיון של מעבר שורה ידני אתה יכול להסויף לפניו רווח של אפס ChrW(8203) כסימן

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

            With para
                  .ParagraphFormat.TabStops.ClearAll
                      .ParagraphFormat.TabStops.Add Position:=middlePosition, Alignment:=wdAlignTabCenter
          '                If .Previous.Text = vbVerticalTab & vbTab Then .Previous.Delete Count:=2
                               If .Previous.Text = vbVerticalTab Then .Previous.Delete
                          .InsertBefore vbVerticalTab & vbTab
                  End With
          

          אתה רואה בשורה 2 CLEARALL

          P מנותק
          P מנותק
          pcinfogmach
          מדריכים
          כתב ב נערך לאחרונה על ידי pcinfogmach
          #163

          @menajemmendel
          אה..
          לא אין לי פתרון

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

          גמ"ח עזרה וייעוץ בנושאי מחשבים

          menajemmendelM תגובה 1 תגובה אחרונה
          0
          • P pcinfogmach

            @יוסף123 כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

            המאקרו גם מחליף כל גרשיים כפולים לגרש

            למה?

            י מנותק
            י מנותק
            יוסף123
            כתב ב נערך לאחרונה על ידי
            #164

            @pcinfogmach כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

            @יוסף123 כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

            המאקרו גם מחליף כל גרשיים כפולים לגרש

            למה?

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

            תגובה 1 תגובה אחרונה
            0
            • P pcinfogmach

              @menajemmendel
              אה..
              לא אין לי פתרון

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

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

              @pcinfogmach כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

              ובשיטה השנייה של שלמה מימות צריך לשנות את הטאב ברירת המחדל לאפס

              מה זה, לא הבנתי איך זה עוזר, אפשר פירוט בבקשה?

              ד תגובה 1 תגובה אחרונה
              0
              • menajemmendelM menajemmendel

                @pcinfogmach כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                ובשיטה השנייה של שלמה מימות צריך לשנות את הטאב ברירת המחדל לאפס

                מה זה, לא הבנתי איך זה עוזר, אפשר פירוט בבקשה?

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

                @menajemmendel כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                אפשר פירוט בבקשה

                באופיס 2016 ומעלה, שכאשר בוחרים 'בזר שורות' השורה האחרונה נמתחת על פני כל השורה (כאשר יש שני מילים ומעלה), וכאשר עושים טאב בסוף השורה, יש באג בוורד שפשוט ממרכז את השורה אחרונה, אך היות והטאב חלק מהשורה, המילים אינם בדיוק באמצע, אלא מוזחים מעט ימינה, וכדי שהם יהיו כמה שיותר מדויק באמצע, משנים את גודל ה'טאב' שיהיה מוגדר על הגודל הקטן ביותר, כך שהמילים יהיו כמה שיותר באמצע.
                יש לציין ששיטה זו עובדת נפלא גם בהערות שוליים. (יש לציין שגם התוסף של @pcinfogmach עושה זאת בהערות שוליים).

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

                  @menajemmendel כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                  אפשר פירוט בבקשה

                  באופיס 2016 ומעלה, שכאשר בוחרים 'בזר שורות' השורה האחרונה נמתחת על פני כל השורה (כאשר יש שני מילים ומעלה), וכאשר עושים טאב בסוף השורה, יש באג בוורד שפשוט ממרכז את השורה אחרונה, אך היות והטאב חלק מהשורה, המילים אינם בדיוק באמצע, אלא מוזחים מעט ימינה, וכדי שהם יהיו כמה שיותר מדויק באמצע, משנים את גודל ה'טאב' שיהיה מוגדר על הגודל הקטן ביותר, כך שהמילים יהיו כמה שיותר באמצע.
                  יש לציין ששיטה זו עובדת נפלא גם בהערות שוליים. (יש לציין שגם התוסף של @pcinfogmach עושה זאת בהערות שוליים).

                  P מנותק
                  P מנותק
                  pcinfogmach
                  מדריכים
                  כתב ב נערך לאחרונה על ידי
                  #167

                  @דאנציג כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                  (יש לציין שגם התוסף של @pcinfogmach עושה זאת בהערות שוליים).

                  בגירסה הנוכחית כבר לא השתמשתי בשיטה זו גם בהערות שוליים

                  גמ"ח עזרה וייעוץ בנושאי מחשבים

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

                    @דאנציג כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                    (יש לציין שגם התוסף של @pcinfogmach עושה זאת בהערות שוליים).

                    בגירסה הנוכחית כבר לא השתמשתי בשיטה זו גם בהערות שוליים

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

                    @pcinfogmach
                    ראיתי, אבל ראיתי שזה עובד (וגם חלון) בהערות שוליים (בשונה מהגירסה של ניקיוזר), אתה פשוט אלוף!!!
                    אבל, בתיבת טקסט שניהם לא עובדים...

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

                      @pcinfogmach
                      ראיתי, אבל ראיתי שזה עובד (וגם חלון) בהערות שוליים (בשונה מהגירסה של ניקיוזר), אתה פשוט אלוף!!!
                      אבל, בתיבת טקסט שניהם לא עובדים...

                      P מנותק
                      P מנותק
                      pcinfogmach
                      מדריכים
                      כתב ב נערך לאחרונה על ידי
                      #169

                      @דאנציג כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                      (וגם חלון) בהערות שוליים (בשונה מהגירסה של ניקיוזר), אתה פשוט אלוף!!!

                      את החלק הזה של הקוד גם קיבלתי מניק יוזר

                      גמ"ח עזרה וייעוץ בנושאי מחשבים

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

                        @pcinfogmach
                        ראיתי, אבל ראיתי שזה עובד (וגם חלון) בהערות שוליים (בשונה מהגירסה של ניקיוזר), אתה פשוט אלוף!!!
                        אבל, בתיבת טקסט שניהם לא עובדים...

                        P מנותק
                        P מנותק
                        pcinfogmach
                        מדריכים
                        כתב ב נערך לאחרונה על ידי
                        #170

                        @דאנציג כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                        אבל, בתיבת טקסט שניהם לא עובדים...

                        ושל שלמה מימות כן?

                        גמ"ח עזרה וייעוץ בנושאי מחשבים

                        ד תגובה 1 תגובה אחרונה
                        0
                        • P pcinfogmach

                          @דאנציג כתב בשיתוף | "מתעדכן" אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות.:

                          אבל, בתיבת טקסט שניהם לא עובדים...

                          ושל שלמה מימות כן?

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

                          @pcinfogmach כן

                          תגובה 1 תגובה אחרונה
                          1
                          • P מנותק
                            P מנותק
                            pcinfogmach
                            מדריכים
                            כתב ב נערך לאחרונה על ידי
                            #172

                            חיפוש והחלפה באבני בניין
                            חיפוש והחלפה עם אבני בניין.dotm

                            גמ"ח עזרה וייעוץ בנושאי מחשבים

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

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

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

                                @ASDF1345 כתב בשיתוף | אוסף מאקרו לוורד - אינדקס מאקרו שימושי + הוראות חשובות:

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

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

                                        ActiveWindow.View.SplitSpecial = wdPaneFootnotes
                                

                                וזה למעבר למסמך מההערה

                                     ActiveWindow.View.SeekView = wdSeekMainDocument
                                

                                אגב, אני הוספתי את הפקודה הזו:
                                d2f7b583-3eea-43df-9027-647e811bacb6-image.png
                                לשורה למעלה, כך שלחיצה על ALT + 5 (אצלי) מביאה את אותה פונקציה בפקודה אחת, דהיינו לחיצה אחת יורדת להערה, ולחיצה נוספת מעלה בחזרה לטקסט, כך שלא צריך שתי פקודות מאקרו נפרדות (שתי קצורי מקשים).

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

                                @דאנציג יכלת גם להגדיר לזה קיצור מקשים מותאם אישית... לשם הידע..

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

                                  מצורף מסמך שמכיל מספר פקודות מאקרו: א. הפניה מקושרת ב. אינדקס ג. פקודות שקשורות לתצוגת טויטה
                                  עריכה: מצורף קובץ יותר מעודכן מאקרו הפניה מקושרת אינדקס תצוגת טויטה.dotm

                                  P תגובה 1 תגובה אחרונה
                                  0
                                  • A ASDF1345

                                    מצורף מסמך שמכיל מספר פקודות מאקרו: א. הפניה מקושרת ב. אינדקס ג. פקודות שקשורות לתצוגת טויטה
                                    עריכה: מצורף קובץ יותר מעודכן מאקרו הפניה מקושרת אינדקס תצוגת טויטה.dotm

                                    P מנותק
                                    P מנותק
                                    pcinfogmach
                                    מדריכים
                                    כתב ב נערך לאחרונה על ידי pcinfogmach
                                    #176

                                    @ASDF1345
                                    מומלץ לציין מה בדיוק השתנה בעדכון

                                    גמ"ח עזרה וייעוץ בנושאי מחשבים

                                    A תגובה 1 תגובה אחרונה
                                    0
                                    • P pcinfogmach

                                      @ASDF1345
                                      מומלץ לציין מה בדיוק השתנה בעדכון

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

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

                                      תגובה 1 תגובה אחרונה
                                      1
                                      • menajemmendelM menajemmendel

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

                                        Sub סגנון_נוכחי_לתחילת_עמוד()
                                        ' מחפש סגנון
                                        Selection.Find.ClearFormatting
                                        SIGNON = Selection.Style
                                            With Selection.Find
                                                .Text = ""
                                                .Style = SIGNON
                                                .Forward = True
                                                .Wrap = wdFindAsk
                                            End With
                                            Selection.Find.Execute
                                        'אחרי שמצא עובר אחוריו ועושה מעבר
                                            Selection.MoveUp Unit:=wdParagraph, Count:=1
                                            Selection.MoveLeft Unit:=wdCharacter, Count:=1
                                            Selection.InsertBreak Type:=wdSectionBreakNextPage
                                            Selection.Delete Unit:=wdCharacter, Count:=1
                                            Selection.MoveRight Unit:=wdCharacter, Count:=1
                                        
                                            
                                        End Sub
                                        
                                        
                                        A מנותק
                                        A מנותק
                                        ASDF1345
                                        כתב נערך לאחרונה על ידי ASDF1345
                                        #178

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

                                        Sub הוספת_מעבר_עמוד_לפי_סגנון_כל_המסמך()
                                        '
                                        ' הוספת_מעבר_עמוד_לפי_סגנון_כל_המסמך Macro
                                        '
                                        '
                                        
                                        Application.ScreenUpdating = False
                                        
                                        Selection.Find.ClearFormatting
                                        SIGNON = Selection.Style
                                        
                                        Dim my_undo As Object
                                        Set my_undo = Application.UndoRecord
                                        my_undo.StartCustomRecord ("הוספת מעבר עמוד לפי סגנון")
                                        On Error GoTo ending
                                        
                                        Dim rng, oRange As Range
                                        Set rng = Selection.Range
                                        
                                        Selection.WholeStory
                                        Set oRange = Selection.Range
                                            
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = "^p"
                                                .Replacement.Text = "#^p"
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = False
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchWildcards = False
                                                .MatchSoundsLike = False
                                                .MatchAllWordForms = False
                                            End With
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                        start:
                                        With Selection.Find
                                            .ClearFormatting
                                                .Text = "#"
                                                .Style = SIGNON
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                Selection.Find.Execute
                                            
                                            If Not Selection.Range.InRange(oRange) Then GoTo ext
                                            If .Found = True Then
                                            Selection.Delete Unit:=wdCharacter, Count:=1
                                            Selection.HomeKey Unit:=wdLine
                                            Selection.InsertBreak Type:=0
                                            
                                        GoTo start
                                            End If
                                        End With
                                        
                                        
                                        ext:
                                            
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = "#"
                                                .Replacement.Text = ""
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = False
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchWildcards = False
                                                .MatchSoundsLike = False
                                                .MatchAllWordForms = False
                                            End With
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = ""
                                                .Replacement.Text = ""
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = False
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchWildcards = False
                                                .MatchSoundsLike = False
                                                .MatchAllWordForms = False
                                            End With
                                        
                                        
                                        rng.Select
                                        
                                        ending:
                                        my_undo.EndCustomRecord
                                        
                                        Application.ScreenUpdating = True
                                        
                                        End Sub
                                        
                                        
                                        תגובה 1 תגובה אחרונה
                                        3
                                        • ד דאנציג התייחס לנושא זה
                                        • מ מנותק
                                          מ מנותק
                                          מניין
                                          כתב נערך לאחרונה על ידי מניין
                                          #179

                                          מאקרו שמחזיר לטור אחד לפי סוג כותרת [משוכלל הרבה יותר מהמאקרו הקודם שמחזיר רק לפי מרכוז], יש אפשרות להחיל את המאקרו רק על פיסקא אחת או על כל המסמך, ומוחק כל המעברים המיותרים.
                                          הוראות:

                                          1. קודם כל צריך לפרוס את כל המסמך לשני טורים ולכוון את המרווחים.
                                          2. לוחצים על הלחצן 'מחזיר לטור אחד לפי כותרת' ושואל איזה סגנון רוצים להחזיר לטור אחד.
                                          3. שואל אם רוצים רק על פיסקא אחת או על כל המסמך, וכמובן אפשר ללחוץ על ביטול.
                                          4. המאקרו מנקה אוטומטי את כל סוגי הכפילויות שנוצרות בגלל הפעולה.
                                          5. אם רוצים אפשר לבטל הכל בלחיצה על קונטרול Z.
                                          6. יש אפשרות לעשות את הפעולה גם על כמה סגנונות בכל פעם על סגנון אחר או לחזור על אותו סגנון, והמאקרו מוחקת כל הכפילויות.
                                          7. אם רוצים להסיר ולהחזיר לשני טורים, יש לחצן נוסף 'מבטל פסקאות שעוצבו לטור אחד ומחזיר לשני טורים', יש שאלת בחירה לאחת משתי אפשרויות, או לבטל במקום אחד, או לבטל הכל בכל המסמך [במקרה שהסתבך, גם בזה יש אפשרות ביטול בלחיצה אחת קונטרול Z].
                                          Sub מחזיר_לטור_אחד_לפי_כותרת()
                                              Dim Alerts As Boolean
                                              Dim a As Boolean
                                              Dim headingName As String
                                              Dim para As paragraph
                                              Dim section As section
                                              Dim inSelectedHeading As Boolean
                                              Dim userChoice As VbMsgBoxResult
                                              Dim deleteParagraphBreaks As VbMsgBoxResult
                                              On Error GoTo ErrorHandler
                                              Application.UndoRecord.StartCustomRecord "החזרת לטור אחד לפי כותרת"
                                              Alerts = Application.DisplayAlerts
                                              Application.DisplayAlerts = wdAlertsNone
                                              Application.ScreenUpdating = False
                                              headingName = InputBox("הזן את שם הכותרת שברצונך לשנות לטור אחד:", "בחירת כותרת")
                                              If headingName = "" Then
                                                  MsgBox "לא הוזנה כותרת. הפעולה בוטלה.", vbExclamation
                                                  Exit Sub
                                              End If
                                              userChoice = MsgBox("האם ברצונך להחיל את השינוי על כל המסמך?", vbYesNoCancel + vbQuestion, "בחירת היקף פעולה")
                                              If userChoice = vbCancel Then
                                                  MsgBox "הפעולה בוטלה.", vbExclamation
                                                  Exit Sub
                                              End If
                                              If userChoice = vbNo Then
                                                  Selection.MoveDown Unit:=wdParagraph, count:=1
                                              Else
                                                  Selection.HomeKey Unit:=wdStory
                                              End If
                                              Do
                                                  Selection.Find.ClearFormatting
                                                  With Selection.Find
                                                      .Style = headingName
                                                      .Text = "^$"
                                                      .Forward = True
                                                      .Wrap = wdFindStop
                                                      .Format = True
                                                      .MatchCase = False
                                                      .MatchWholeWord = False
                                                      .MatchControl = False
                                                      .MatchWildcards = False
                                                      .MatchSoundsLike = False
                                                      .MatchAllWordForms = False
                                                  End With
                                                  a = Selection.Find.Execute
                                                  If a = True Then
                                                      Selection.Paragraphs(1).Range.Select
                                                      ActiveDocument.Range(Start:=Selection.Start, End:=Selection.Start). _
                                                          InsertBreak Type:=wdSectionBreakContinuous
                                                      Selection.Start = Selection.Start + 1
                                                      ActiveDocument.Range(Start:=Selection.End, End:=Selection.End).InsertBreak _
                                                          Type:=wdSectionBreakContinuous
                                                      With Selection.pageSetup.TextColumns
                                                          .SetCount numColumns:=1
                                                          .EvenlySpaced = True
                                                          .LineBetween = False
                                                      End With
                                                      Selection.MoveRight Unit:=wdCharacter, count:=1
                                                  End If
                                              Loop While a = True And (userChoice = vbYes)
                                              Call מחיקת_מעברים_מיותרים
                                              Selection.HomeKey Unit:=wdStory
                                              MsgBox "הפעולה הושלמה! ניתן לבטל את כל השינויים באמצעות Ctrl+Z.", vbInformation
                                          Cleanup:
                                              Application.DisplayAlerts = Alerts
                                              Application.ScreenUpdating = True
                                              Application.UndoRecord.EndCustomRecord
                                              Exit Sub
                                          ErrorHandler:
                                              MsgBox "אירעה שגיאה: " & Err.Description, vbCritical
                                              Resume Cleanup
                                          End Sub
                                          Private Sub מחיקת_מעברים_מיותרים()
                                              Dim sectionBreakRange As Range
                                              Dim paraBefore As Range
                                              Dim paraAfter As Range
                                              Application.ScreenUpdating = False
                                              Selection.HomeKey Unit:=wdStory
                                              If Selection.Find.Execute(FindText:="^b", MatchWildcards:=False, Forward:=True, Wrap:=wdFindStop) = True Then
                                                  If Selection.Start = 0 Then
                                                      Selection.Delete
                                                  End If
                                              End If
                                              Dim found As Boolean
                                              Dim specialChar As String: specialChar = ";~;"
                                              Selection.HomeKey Unit:=wdStory
                                              With Selection.Find
                                                  .ClearFormatting: .Text = "^b^b": .Forward = True: .Wrap = wdFindStop: .Format = False: .MatchWildcards = False
                                              End With
                                              Do While Selection.Find.Execute
                                                  Selection.Collapse Direction:=wdCollapseEnd: Selection.TypeText Text:=specialChar
                                              Loop
                                              Selection.HomeKey Unit:=wdStory
                                              With Selection.Find
                                                  .ClearFormatting: .Text = "^b" & specialChar: .Forward = True: .Wrap = wdFindStop: .Format = False: .MatchWildcards = False
                                              End With
                                              Do While Selection.Find.Execute
                                                  Selection.Delete
                                              Loop
                                              Selection.HomeKey Unit:=wdStory
                                              With Selection.Find
                                                  .ClearFormatting: .Text = specialChar: .Forward = True: .Wrap = wdFindStop: .Format = False: .MatchWildcards = False
                                              End With
                                              Do While Selection.Find.Execute
                                                  Selection.Delete
                                              Loop
                                              Selection.HomeKey Unit:=wdStory
                                              Do While Selection.Find.Execute(FindText:="^b", MatchWildcards:=False, Forward:=True, Wrap:=wdFindStop) = True
                                                  Set sectionBreakRange = Selection.Range
                                                  If sectionBreakRange.Start > 0 Then
                                                      On Error Resume Next
                                                      Set paraBefore = sectionBreakRange.Paragraphs(1).Range.Previous(wdParagraph, 1)
                                                      Set paraAfter = sectionBreakRange.Paragraphs(1).Range.Next(wdParagraph, 1)
                                                      On Error GoTo 0
                                                      If Not paraBefore Is Nothing And Not paraAfter Is Nothing Then
                                                          If paraBefore.pageSetup.TextColumns.count = 1 And _
                                                             paraAfter.pageSetup.TextColumns.count = 1 Then
                                                              sectionBreakRange.Delete
                                                          End If
                                                      End If
                                                  End If
                                                  Selection.Start = sectionBreakRange.Start
                                                  Selection.Collapse Direction:=wdCollapseEnd
                                              Loop
                                              Application.ScreenUpdating = True
                                          End Sub
                                          Sub מבטל_פסקאות_שעוצבו_לטור_אחד_ומחזיר_לשני_טורים()
                                              On Error GoTo ErrorHandler ' הפעלת טיפול בשגיאות
                                              Dim userChoice As VbMsgBoxResult
                                              userChoice = MsgBox("מחזיר פיסקא נוכחית לשני טורים. האם ברצונך לעשות פעולה זו על כל המסמך?", vbYesNo + vbQuestion, "מחיקת מעברי מקטע")
                                              If userChoice = vbYes Then
                                                  Call מחיקת_מעברי_מקטע_בכל_המסמך
                                              ElseIf userChoice = vbNo Then
                                                  Call מחיקת_מעברי_מקטע_בפסקא_נוכחית
                                              Else
                                                  MsgBox "הפעולה בוטלה.", vbInformation
                                              End If
                                              Exit Sub
                                          
                                          ErrorHandler:
                                              MsgBox "אירעה שגיאה: " & Err.Description, vbCritical, "שגיאה"
                                          End Sub
                                          Private Sub מחיקת_מעברי_מקטע_בכל_המסמך()
                                              On Error GoTo ErrorHandler ' הפעלת טיפול בשגיאות
                                              Dim para As paragraph
                                              Dim paraRange As Range
                                              Dim sectionRange As Range
                                              Application.UndoRecord.StartCustomRecord
                                              Application.ScreenUpdating = False
                                              Selection.HomeKey Unit:=wdStory
                                              For Each para In ActiveDocument.Paragraphs
                                                  Set paraRange = para.Range
                                                  If paraRange.pageSetup.TextColumns.count = 1 Then
                                                      Set sectionRange = paraRange.Duplicate
                                                      sectionRange.Collapse wdCollapseEnd
                                                      sectionRange.MoveEnd Unit:=wdCharacter, count:=1
                                                      
                                                      If sectionRange.Text = Chr(12) Then
                                                          sectionRange.Delete
                                                          With ActiveDocument.Range(paraRange.Start - 1, paraRange.Start)
                                                              If .Text = Chr(12) Then
                                                                  .Delete
                                                              End If
                                                          End With
                                                      End If
                                                  End If
                                              Next para
                                              MsgBox "הפעולה הסתיימה בהצלחה על כל המסמך", vbInformation
                                              Application.ScreenUpdating = True
                                              Application.UndoRecord.EndCustomRecord
                                              Exit Sub
                                          
                                          ErrorHandler:
                                              Application.ScreenUpdating = True
                                              Application.UndoRecord.EndCustomRecord
                                              MsgBox "אירעה שגיאה: " & Err.Description, vbCritical, "שגיאה"
                                          End Sub
                                          
                                          Private Sub מחיקת_מעברי_מקטע_בפסקא_נוכחית()
                                              On Error GoTo ErrorHandler ' הפעלת טיפול בשגיאות
                                              Dim currentPara As paragraph
                                              Dim paraRange As Range
                                              Dim sectionRange As Range
                                              Application.UndoRecord.StartCustomRecord
                                              Application.ScreenUpdating = False
                                              If Selection.Range.Paragraphs.count = 0 Then
                                                  MsgBox "נא לעמוד בתוך פסקה בטור אחד.", vbExclamation
                                                  GoTo Cleanup
                                              End If
                                              Set currentPara = Selection.Range.Paragraphs(1)
                                              Set paraRange = currentPara.Range
                                              If currentPara.Range.pageSetup.TextColumns.count <> 1 Then
                                                  MsgBox "נא לעמוד בפסקה בטור אחד בלבד.", vbExclamation
                                                  GoTo Cleanup
                                              End If
                                              Set sectionRange = paraRange.Duplicate
                                              sectionRange.Collapse wdCollapseEnd
                                              sectionRange.MoveEnd Unit:=wdCharacter, count:=1
                                              If sectionRange.Text <> Chr(12) Then
                                                  MsgBox "נא לעמוד בפסקה האחרונה לפני מעבר לשני טורים.", vbExclamation
                                                  GoTo Cleanup
                                              End If
                                              sectionRange.Delete
                                              With Selection.Find
                                                  .ClearFormatting
                                                  .Text = "^b"
                                                  .Forward = False
                                                  .Wrap = wdFindStop
                                                  If .Execute Then Selection.Delete
                                              End With
                                              MsgBox "הפעולה הושלמה בהצלחה עבור הפסקה הנוכחית", vbInformation
                                          
                                          Cleanup:
                                              Application.ScreenUpdating = True
                                              Application.UndoRecord.EndCustomRecord
                                              Exit Sub
                                          
                                          ErrorHandler:
                                              Application.ScreenUpdating = True
                                              Application.UndoRecord.EndCustomRecord
                                              MsgBox "אירעה שגיאה: " & Err.Description, vbCritical, "שגיאה"
                                          End Sub
                                          

                                          שוה בדיקה

                                          עריכה: הוכנסו שני תיקונים במאקרו, יש להוריד מחדש.
                                          עריכה נוספת: נוסף אפשרות לשחזר את כל השינויים בלחיצה אחת על Ctrl+Z
                                          עריכה שלישית: נוסף לחצן להסרת הפעולה, כשאין אפשרות של ביטול פעולה אחרונה, ועוד הרבה שיפורים למניעת שגיאות של כפילויות וכדו', וכן הוראות הפעלה

                                          menajemmendelM תגובה 1 תגובה אחרונה
                                          5
                                          • מ מניין התייחס לנושא זה

                                          • התחברות

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

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