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

להורדה | תוסף עיצוב תורני לוורד

מתוזמן נעוץ נעול הועבר עזרה הדדית - וורד
384 פוסטים 46 כותבים 31.2k צפיות 57 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • P pcinfogmach

    @menajemmendel כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

    @pcinfogmach תודה רבה, אפשר לראות את הקוד של מילת פתיח?
    האם אפשר לקבל את הקוד בבקשה

    מצו"ב הקוד של עיצוב מילה ראשונה
    הקוד עודכן וכעת הוא מתאים גם להערות שוליים
    עדכון הקוד עודכן שוב ושונה באופן מהותי - כמו"כ נוספו קוד להוספת סגנון.
    https://mitmachim.top/post/638849

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

    @menajemmendel לגבי הקוד של מילת פתיח בוורד

    הקוד שונה שוב באופן מהותי ועודכן בפוסט הנ"ל
    https://mitmachim.top/post/629854

    כמו"כ נוספו קודים להוספת והחלת סגנון

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

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

      @menajemmendel לגבי הקוד של מילת פתיח בוורד

      הקוד שונה שוב באופן מהותי ועודכן בפוסט הנ"ל
      https://mitmachim.top/post/629854

      כמו"כ נוספו קודים להוספת והחלת סגנון

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

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

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

      
      Sub ONLY_TWO_LINES()
      'מחפש פיסקאות שהם שתים או פחות
          Dim PISKA As Paragraph
          For Each PISKA In ActiveDocument.Paragraphs
              If PISKA.Range.ComputeStatistics(wdStatisticLines) <= 2 Then
                  PISKA.Range.Select
                  'call המאקרו לתיקון שאתה רוצה
              End If
          Next PISKA
      End Sub
      

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

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

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

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

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

        
        Sub ONLY_TWO_LINES()
        'מחפש פיסקאות שהם שתים או פחות
            Dim PISKA As Paragraph
            For Each PISKA In ActiveDocument.Paragraphs
                If PISKA.Range.ComputeStatistics(wdStatisticLines) <= 2 Then
                    PISKA.Range.Select
                    'call המאקרו לתיקון שאתה רוצה
                End If
            Next PISKA
        End Sub
        

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

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

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

        @menajemmendel

        לפני הכול
        ייש"כ על המשוב כמה טוב לראות אנשים שאיכפת להם.
        ואיזה ענוות חן במילותיך 🙂

        לגבי הקוד הנ"ל היה צורך לערוך בו איזהו שינוי.

        הסיבה העיקרית לאריכות הגדולה בקודים היא בגלל שהקודים מטפלים בכל מיני בעיות שעלולות לצוץ תוכ"ד הרצת הקוד. ותאמין לי שהיה המון בעיות......

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

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

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

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

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

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

          
          Sub ONLY_TWO_LINES()
          'מחפש פיסקאות שהם שתים או פחות
              Dim PISKA As Paragraph
              For Each PISKA In ActiveDocument.Paragraphs
                  If PISKA.Range.ComputeStatistics(wdStatisticLines) <= 2 Then
                      PISKA.Range.Select
                      'call המאקרו לתיקון שאתה רוצה
                  End If
              Next PISKA
          End Sub
          

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

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

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

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

          Sub FirstWordFormatWholeDoc()
          '
          'עיצוב מילה ראשונה בכל המסמך
          'מאת pcinfogmach
          '
          '
          
              ' Declare variables
              Dim para As Paragraph
              Dim paraText As String
              Dim numSpaces As Integer
              Dim spacePos As Long
              Dim startSel As Long
              Dim endSel As Long
              Dim i As Integer
              Dim paraRange As Range
              Dim skpit As Boolean
              Dim solveletters As VbMsgBoxResult
              
              ' Get number of spaces
              numSpaces = 1
              
              'טיפול בפיסקאות עם שורה אחת או שנים
              Dim include1Line As Boolean
              Dim include2Line As Boolean
              
              include1Line = MsgBox("האם ברצונך לכלול פיסקאות עם שורה אחת?", vbQuestion + vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading, "הסרת עיצוב מילה ראשונה מאת - pcinfogmach") = vbNo
              If include1Line Then
              include2Line = MsgBox("האם ברצונך לכלול פיסקאות עם 2 שורות?", vbQuestion + vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading, "הסרת עיצוב מילה ראשונה מאת - pcinfogmach") = vbNo
              End If
              
              'טווח הפעולה
              Selection.WholeStory
              Dim slctd As Range
              Set slctd = Selection.Range
              slctd.SetRange Selection.Paragraphs.First.Range.Start, Selection.Paragraphs.Last.Range.End
                
              'הכנות וטיפול בבעיות
              Application.ScreenUpdating = False
              Dim ftntstyl As String
              ActiveWindow.View.SeekView = wdSeekMainDocument
              Selection.Move wdCharacter, 1
              ActiveDocument.Footnotes.Add Range:=Selection.Range, _
              Text:="דוגמא."
              Selection.MoveEnd wdCharacter, 1
              ftntstyl = Selection.Range.Style.NameLocal 'Get the name of the current style
              Selection.Delete Unit:=wdCharacter, count:=1
              
              Selection.Find.ClearFormatting
              Selection.Find.Replacement.ClearFormatting
              slctd.Find.Execute FindText:="^f", ReplaceWith:="^&%?!#...", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:="%?!#... ", ReplaceWith:=ChrW(8194), Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:="%?!#...", ReplaceWith:="", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              
              slctd.Find.Execute FindText:="^f", ReplaceWith:="^&^p", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:=Chr(13) & ChrW(8194), ReplaceWith:="^&^p", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:="([!^13])(^2)(^13)", ReplaceWith:="\1\2", Forward:=True, Wrap:=wdFindStop, MatchWildcards:=True, Replace:=wdReplaceAll
          
              'תחילת הלולאה
              slctd.Select
              For Each para In slctd.Paragraphs
              
              'החרגות
              If para.Range.Style Like "כותרת*" Then GoTo nxt
              If para.Range.Style Like "Heading*" Then GoTo nxt
              If Not para.Range.ParagraphFormat.Alignment <> wdAlignParagraphCenter Then GoTo nxt
              If Not para.Range.ComputeStatistics(wdStatisticLines) <> 1 And include1Line Then GoTo nxt
              If Not para.Range.ComputeStatistics(wdStatisticLines) <> 2 And include2Line Then GoTo nxt
           
                      ' Get text of paragraph
                      paraText = para.Range.Text
                      
                      ' Find position of first space
                      spacePos = InStr(1, paraText, " ")
                      
                      ' Find position of selected space
                      For i = 2 To numSpaces
                          spacePos = InStr(spacePos + 1, paraText, " ")
                          If spacePos = 0 Then Exit For
                      Next i
                      
                      ' Select words
                      If Not spacePos > 0 Then GoTo nxt
                          startSel = para.Range.Start
                          endSel = startSel + spacePos
                          Selection.SetRange Start:=startSel, End:=endSel
          
          Application.ScreenUpdating = True
          Application.ScreenRefresh
          
          'טיפול בסימוני סימנים ופרקים
          If solveletters = vbNo Then GoTo skp
          If Mid(Selection.Range.Text, Len(Selection.Text) - 1, 1) = Chr(93) Or Mid(Selection.Text, Len(Selection.Text) - 1, 1) = Chr(41) Then
          Application.ScreenRefresh
          If solveletters = vbYes Then GoTo doit
                 solveletters = MsgBox("ייתכן שהמילה הראשונה משמשת כסימון של סימנים או פרקים. האם להרחיב את העיצוב עד למילה השנייה?", _
                 vbQuestion + vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading, "מאקרו חלון מתחת למילה הראשונה")
          If solveletters = vbNo Then GoTo skp
          doit:
              Selection.Find.ClearFormatting
              Selection.Find.Replacement.ClearFormatting
              With Selection.Find
                  .Text = "* * "
                  .Replacement.Text = ""
                  .Forward = True
                  .Wrap = wdFindContinue
                  .MatchWildcards = True
                  .Execute
              End With
          skp:
          End If
          
          
          'מעקף עבור שאר הפיסקאות חוץ מהראשונה
          If skpit = True Then GoTo rst
          
          'בחירת העיצוב
            Selection.Font.Name = Selection.Font.Name
              With Dialogs(wdDialogFormatFont)
              .Update
                  .Font = Selection.Font.Name
                  .FontNameBi = Selection.Font.Name
                  If .Show = False Then GoTo endr
              End With
                 
              Selection.CopyFormat
              skpit = True
              Application.ScreenRefresh
              GoTo nxt
          
          'החלת העיצוב בשאר הפיסקאות
          rst:
          Selection.PasteFormat
          Application.ScreenRefresh
          nxt:
              Next para
          endr:
          
          'ניקוי שאריות
          slctd.Find.Execute FindText:=ChrW(8194) & Chr(13), ReplaceWith:=ChrW(8194), Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
          slctd.Find.Execute FindText:="(^2)^13", ReplaceWith:="\1", Forward:=True, Wrap:=wdFindStop, MatchWildcards:=True, Replace:=wdReplaceAll
          
              Selection.Find.ClearFormatting
              Selection.Find.Replacement.ClearFormatting
              On Error Resume Next
              Selection.Find.Replacement.Style = ActiveDocument.Styles( _
                  ftntstyl)
              With Selection.Find
                  .Text = "^2"
                  .Replacement.Text = "^&"
                  .Forward = True
                  .Wrap = wdFindContinue
                  .Format = True
                  .MatchWildcards = True
              End With
              Selection.Find.Execute Replace:=wdReplaceAll
              On Error GoTo 0
              
          'מניעת שגיאות
          Application.ScreenRefresh
          
          End Sub
          

          אז בואו נתחיל בניתוח הקוד:

          הקוד פותח בהצהרת משתנים רבים

              Dim para As Paragraph
              Dim paraText As String
              Dim numSpaces As Integer
              Dim spacePos As Long
              Dim startSel As Long
              Dim endSel As Long
              Dim i As Integer
              Dim paraRange As Range
              Dim skpit As Boolean
              Dim solveletters As VbMsgBoxResult
          

          האמת היא שהיה יכול להיות הרבה פחות משנים וכך היה במקור. לדוגמא המשתנה של Dim i As Integer אינו הכרחי בקוד זה כלל והוא נמצא כאן רק בגלל שהשתמשתי עם אותו הקוד גם בוריאציה אחרת והיה לי יותר קל להשאיר אותו מאשר להתחיל לשנות את הקוד.

          כמו"כ חלק מהמשתנים נולדו מתוך הצורך לזהות פיסקאות בעיתיות תוכ"ד הרצת הקוד (פיסקאות בלי רווחים). אפשר היה לעשות זאת בצורה אחרת אבל הצורה הזו הכי מהירה מבחינת קוד (אז מה עדיף קוד ברור או משוכלל? אני מעדיף משוכלל).

          ' Get number of spaces
              numSpaces = 1
          

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

          'טיפול בפיסקאות עם שורה אחת או שנים
              Dim include1Line As Boolean
              Dim include2Line As Boolean
              
              include1Line = MsgBox("האם ברצונך לכלול פיסקאות עם שורה אחת?", vbQuestion + vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading, "הסרת עיצוב מילה ראשונה מאת - pcinfogmach") = vbNo
              If include1Line Then
              include2Line = MsgBox("האם ברצונך לכלול פיסקאות עם 2 שורות?", vbQuestion + vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading, "הסרת עיצוב מילה ראשונה מאת - pcinfogmach") = vbNo
              End If
          

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

           Selection.WholeStory
              Dim slctd As Range
              Set slctd = Selection.Range
          

          ארוך ומסורבל היה אפשר להגדיר שהrange יהיה על כל המסמך. אבל זה יצר בעיות ההערות שוליים. כי הקוד רץ גם עליהם ורציתי שיוכלו להריץ אותו בנפרד על הטקסט הראשי ועל ההערות שוליים.

           slctd.SetRange Selection.Paragraphs.First.Range.Start, Selection.Paragraphs.Last.Range.End
          

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

          'הכנות וטיפול בבעיות
              Application.ScreenUpdating = False
              Dim ftntstyl As String
              ActiveWindow.View.SeekView = wdSeekMainDocument
              Selection.Move wdCharacter, 1
              ActiveDocument.Footnotes.Add Range:=Selection.Range, _
              Text:="דוגמא."
              Selection.MoveEnd wdCharacter, 1
              ftntstyl = Selection.Range.Style.NameLocal 'Get the name of the current style
              Selection.Delete Unit:=wdCharacter, count:=1
          

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

          Selection.Find.ClearFormatting
              Selection.Find.Replacement.ClearFormatting
              slctd.Find.Execute FindText:="^f", ReplaceWith:="^&%?!#...", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:="%?!#... ", ReplaceWith:=ChrW(8194), Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:="%?!#...", ReplaceWith:="", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              
              slctd.Find.Execute FindText:="^f", ReplaceWith:="^&^p", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:=Chr(13) & ChrW(8194), ReplaceWith:="^&^p", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
              slctd.Find.Execute FindText:="([!^13])(^2)(^13)", ReplaceWith:="\1\2", Forward:=True, Wrap:=wdFindStop, MatchWildcards:=True, Replace:=wdReplaceAll
          

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

          'תחילת הלולאה
              slctd.Select
              For Each para In slctd.Paragraphs
          

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

            'החרגות
              If para.Range.Style Like "כותרת*" Then GoTo nxt
              If para.Range.Style Like "Heading*" Then GoTo nxt
              If Not para.Range.ParagraphFormat.Alignment <> wdAlignParagraphCenter Then GoTo nxt
              If Not para.Range.ComputeStatistics(wdStatisticLines) <> 1 And include1Line Then GoTo nxt
              If Not para.Range.ComputeStatistics(wdStatisticLines) <> 2 And include2Line Then GoTo nxt
          

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

                      ' Get text of paragraph
                      paraText = para.Range.Text
                      
                      ' Find position of first space
                      spacePos = InStr(1, paraText, " ")
                      
                      ' Find position of selected space
                      For i = 2 To numSpaces
                          spacePos = InStr(spacePos + 1, paraText, " ")
                          If spacePos = 0 Then Exit For
                      Next i
                      
                      ' Select words
                      If Not spacePos > 0 Then GoTo nxt
                          startSel = para.Range.Start
                          endSel = startSel + spacePos
          

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

                Selection.SetRange Start:=startSel, End:=endSel
          

          סימון הטווח שקבענו

          Application.ScreenUpdating = True
          Application.ScreenRefresh
          

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

          'טיפול בסימוני סימנים ופרקים
          If solveletters = vbNo Then GoTo skp
          If Mid(Selection.Range.Text, Len(Selection.Text) - 1, 1) = Chr(93) Or Mid(Selection.Text, Len(Selection.Text) - 1, 1) = Chr(41) Then
          Application.ScreenRefresh
          If solveletters = vbYes Then GoTo doit
                 solveletters = MsgBox("ייתכן שהמילה הראשונה משמשת כסימון של סימנים או פרקים. האם להרחיב את העיצוב עד למילה השנייה?", _
                 vbQuestion + vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading, "מאקרו חלון מתחת למילה הראשונה")
          If solveletters = vbNo Then GoTo skp
          doit:
              Selection.Find.ClearFormatting
              Selection.Find.Replacement.ClearFormatting
              With Selection.Find
                  .Text = "* * "
                  .Replacement.Text = ""
                  .Forward = True
                  .Wrap = wdFindContinue
                  .MatchWildcards = True
                  .Execute
              End With
          skp:
          End If
          

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

          'מעקף עבור שאר הפיסקאות חוץ מהראשונה
          If skpit = True Then GoTo rst
          

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

          'בחירת העיצוב
            Selection.Font.Name = Selection.Font.Name
              With Dialogs(wdDialogFormatFont)
              .Update
                  .Font = Selection.Font.Name
                  .FontNameBi = Selection.Font.Name
                  If .Show = False Then GoTo endr
              End With
          

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

              Selection.CopyFormat
              skpit = True
              Application.ScreenRefresh
              GoTo nxt
          

          העתקת העיצוב הגדרת המשתנה שיעקוף על בחירת העיצוב בפיסקה הבאה ו- למקרה שהתמשתמש רוצה לראות היכן אחזים אז refresh

          'החלת העיצוב בשאר הפיסקאות
          rst:
          Selection.PasteFormat
          Application.ScreenRefresh
          nxt:
              Next para
          endr:
          

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

          'ניקוי שאריות
          slctd.Find.Execute FindText:=ChrW(8194) & Chr(13), ReplaceWith:=ChrW(8194), Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll
          slctd.Find.Execute FindText:="(^2)^13", ReplaceWith:="\1", Forward:=True, Wrap:=wdFindStop, MatchWildcards:=True, Replace:=wdReplaceAll
          

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

              Selection.Find.ClearFormatting
              Selection.Find.Replacement.ClearFormatting
              On Error Resume Next
              Selection.Find.Replacement.Style = ActiveDocument.Styles( _
                  ftntstyl)
              With Selection.Find
                  .Text = "^2"
                  .Replacement.Text = "^&"
                  .Forward = True
                  .Wrap = wdFindContinue
                  .Format = True
                  .MatchWildcards = True
              End With
              Selection.Find.Execute Replace:=wdReplaceAll
              On Error GoTo 0
          

          תיקון הבעיה עם סימני הערות שוליים שהזכרנו למעלה

          'מניעת שגיאות
          Application.ScreenRefresh
          

          לפעמים המסך נתקע בגמר המאקרו אז refresh פותר את הבעיה.

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

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

            עריכה נוכחית:
            בקרוב פוסט ישמש רק עבור תגובות הפוסט הועבר לכאן
            https://mitmachim.top/post/724341


            תוסף תורני לוורד - חינמי

            a4a71912-0777-40a3-b734-1c8afded5662-image.png

            קוד פתוח (הקוד הוא: 1234)
            תוסף-עיצוב-תורני-גרסה-7.9.zip


            גירסת התקנה אוטומטית
            **תוסף-עיצוב-תורני-7.9.exe **


            גירסת האדם החושב
            לפרטים על גירסה זו לחץ כאן


            • למי שנחסם לו התוסף יש לפעול לפי ההוראות כאן

            להלן חלק מהשינויים והשיפורים שנעשו בגירסה זו

            1. יוזרפורם מרווחים משופר
            2. מספור עברי משופר
            3. הערות מספור עברי - חדש!
            4. סוגריים משופר נוסף לו קיצור דרך על ידי לחיצה יחד עם ALT
            5. יוזרפורם של stylref
            6. הוספה לשדה seq
            7. יוזרפורם טאבים וכניסות משופר
            8. חילוץ טקסטים משופר
            9. חיפוש והחלפה מרובים עם יוזר פורם משופר
            10. בדיקת קוד לחיפוש והחלפה משופר
            11. גימטריא נוסף המרת אותיות למספרים
              ועוד ועוד....

            מידע נוסף:
            התוסף נבנה על בסיס מאקרואים שפורסמו כאן. באם הדבר יתאפשר התוסף יתעדכן מפעם לפעם על פי המאקרואים הנ"ל ובלי נדר.

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

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

            אשמח לקבל הערות והארות

            נ.ב. קרדיט ותודה גדולה ל- @NykUser על כל העזרה ועל כל הקודים הנפלאים שהוא סיפק עבור תוסף זה. כמו"כ תודה גדולה ל @מאקרו ול @menajemmendel ול @דאנציג ו @צדיק-וטוב-לו-0 ו @האדם-החושב ו @מניין ולכל מי שעזר בשדרוג ובבניית התוסף (אבקש את מחילת כל מי שלא הזכרתי את שמו בפרטות עקב ריבוי העוזרים).


            גירסאות קודמות

            גירסה מס' 1:
            תוסף עיצוב ספרי קודש.zip
            הערה: יש בעיות בגירסה זו אצל חלק מהמשתמשים יש להשתמש בגירסה 2 והלאה.

            גירסה מס' 2:
            תוסף עיצוב ספרי קודש גירסה 2.zip
            תוקנו הבעיות בגירסה מס' 1. וכן תיקונים ושיפורים בפקודות המאקרו.

            גירסה מס' 3:
            תוסף עיצוב ספרי קודש גירסה 3.zip
            שדרוג יפה לממשק המשתמש

            גירסה מס' 4:
            הקוד שודרג בכלליות. נוסף עיצוב חלון כפול (מקובל בחלק מהספרים בפסקאות עם שלוש שורות). ממשק המשתמש חזר ללחצנים קטנים למניעת בלבול. (מסתמן שבגירסה 5 יתווסף תמיכה גם בעיצוב הערות שוליים).
            תוסף עיצוב ספרי קודש גירסה 4.zip
            עדכון:
            @שליו הכין קובץ התקנה אוטומטית למי שרוצה תוסף-עיצוב-ספרי-קודש.rar
            סיסמה: "מתמחים טופ"בקובץ זה אין צורך להסיר ידנית את הגירסה הקודמת

            גירסה מס' 5.1:
            תוסף עיצוב ספרי קודש גרסה 5.1.exe
            וגירסה בקוד פתוח למי שרוצה:
            תוסף עיצוב ספרי קודש גרסה 5.1.zip

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

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

            גירסה מספר 6:
            תוסף עיצוב תורני גירסה 6.exe
            תוסף עיצוב תורני גרסה 6.2.exe
            תוסף עיצוב תורני גרסה 6.3.exe
            תוסף עיצוב תורני גרסה 6.3 (קוד פתוח).zip

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

            שים לב! עקב שינוי השם יש להסיר את הגרסה הקודמת בצורה ידנית מתוך נתיב זה

            %AppData%\Microsoft\Word\STARTUP
            

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

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

            בס"ד גירסה מס' 5 של תוסף עיצוב ספרי קודש יצא לאור:

            עודכן בפוסט המקורי
            https://mitmachim.top/post/626904

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

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

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

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

            ש S 2 תגובות תגובה אחרונה
            1
            • P pcinfogmach

              בס"ד גירסה מס' 5 של תוסף עיצוב ספרי קודש יצא לאור:

              עודכן בפוסט המקורי
              https://mitmachim.top/post/626904

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

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

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

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

              @pcinfogmach
              הורדתי את הגרסה האחרונה אבל הקובץ ריק!

              P תגובה 1 תגובה אחרונה
              2
              • ש שליו

                @pcinfogmach
                הורדתי את הגרסה האחרונה אבל הקובץ ריק!

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

                @שליו כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

                @pcinfogmach
                הורדתי את הגרסה האחרונה אבל הקובץ ריק!

                סליחה!
                הקובץ עודכן כעת.

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

                menajemmendelM dfhzrhreeD 2 תגובות תגובה אחרונה
                4
                • P pcinfogmach

                  בס"ד גירסה מס' 5 של תוסף עיצוב ספרי קודש יצא לאור:

                  עודכן בפוסט המקורי
                  https://mitmachim.top/post/626904

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

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

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

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

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

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

                    @שליו כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

                    @pcinfogmach
                    הורדתי את הגרסה האחרונה אבל הקובץ ריק!

                    סליחה!
                    הקובץ עודכן כעת.

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

                    @pcinfogmach ממש יפה תודה

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

                      @שליו כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

                      @pcinfogmach
                      הורדתי את הגרסה האחרונה אבל הקובץ ריק!

                      סליחה!
                      הקובץ עודכן כעת.

                      dfhzrhreeD מנותק
                      dfhzrhreeD מנותק
                      dfhzrhree
                      מדריכים
                      כתב ב נערך לאחרונה על ידי dfhzrhree
                      #69

                      @pcinfogmach
                      אולי כדאי להוסיף (במסמך גופו) תמונה כעין זו, יען לא כל ברנש יבין מעצמו היכן מקומו של מקש ההתקנה, הלא כן?
                      98c905fe-85e5-4364-91c0-a599fc060caa-image.png


                      אתה שומע? תגיד תודה!
                      רוץ לספר פה!
                      רוצה תכל'ס? טוווווב, קח!

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

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

                        P תגובה 1 תגובה אחרונה
                        1
                        • ב בוקר טוב

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

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

                          @בוקר-טוב כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

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

                          כלומר פותח מסמך חדש ריק?
                          או שלא מפנה כלל?

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

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

                            @בוקר-טוב כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

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

                            כלומר פותח מסמך חדש ריק?
                            או שלא מפנה כלל?

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

                            @pcinfogmach פותח חדש ריק

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

                              @pcinfogmach פותח חדש ריק

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

                              @בוקר-טוב
                              תודה. אנסה לטפל בזה בגירסאות הבאות בלי נדר.

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

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

                                עריכה נוכחית:
                                בקרוב פוסט ישמש רק עבור תגובות הפוסט הועבר לכאן
                                https://mitmachim.top/post/724341


                                תוסף תורני לוורד - חינמי

                                a4a71912-0777-40a3-b734-1c8afded5662-image.png

                                קוד פתוח (הקוד הוא: 1234)
                                תוסף-עיצוב-תורני-גרסה-7.9.zip


                                גירסת התקנה אוטומטית
                                **תוסף-עיצוב-תורני-7.9.exe **


                                גירסת האדם החושב
                                לפרטים על גירסה זו לחץ כאן


                                • למי שנחסם לו התוסף יש לפעול לפי ההוראות כאן

                                להלן חלק מהשינויים והשיפורים שנעשו בגירסה זו

                                1. יוזרפורם מרווחים משופר
                                2. מספור עברי משופר
                                3. הערות מספור עברי - חדש!
                                4. סוגריים משופר נוסף לו קיצור דרך על ידי לחיצה יחד עם ALT
                                5. יוזרפורם של stylref
                                6. הוספה לשדה seq
                                7. יוזרפורם טאבים וכניסות משופר
                                8. חילוץ טקסטים משופר
                                9. חיפוש והחלפה מרובים עם יוזר פורם משופר
                                10. בדיקת קוד לחיפוש והחלפה משופר
                                11. גימטריא נוסף המרת אותיות למספרים
                                  ועוד ועוד....

                                מידע נוסף:
                                התוסף נבנה על בסיס מאקרואים שפורסמו כאן. באם הדבר יתאפשר התוסף יתעדכן מפעם לפעם על פי המאקרואים הנ"ל ובלי נדר.

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

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

                                אשמח לקבל הערות והארות

                                נ.ב. קרדיט ותודה גדולה ל- @NykUser על כל העזרה ועל כל הקודים הנפלאים שהוא סיפק עבור תוסף זה. כמו"כ תודה גדולה ל @מאקרו ול @menajemmendel ול @דאנציג ו @צדיק-וטוב-לו-0 ו @האדם-החושב ו @מניין ולכל מי שעזר בשדרוג ובבניית התוסף (אבקש את מחילת כל מי שלא הזכרתי את שמו בפרטות עקב ריבוי העוזרים).


                                גירסאות קודמות

                                גירסה מס' 1:
                                תוסף עיצוב ספרי קודש.zip
                                הערה: יש בעיות בגירסה זו אצל חלק מהמשתמשים יש להשתמש בגירסה 2 והלאה.

                                גירסה מס' 2:
                                תוסף עיצוב ספרי קודש גירסה 2.zip
                                תוקנו הבעיות בגירסה מס' 1. וכן תיקונים ושיפורים בפקודות המאקרו.

                                גירסה מס' 3:
                                תוסף עיצוב ספרי קודש גירסה 3.zip
                                שדרוג יפה לממשק המשתמש

                                גירסה מס' 4:
                                הקוד שודרג בכלליות. נוסף עיצוב חלון כפול (מקובל בחלק מהספרים בפסקאות עם שלוש שורות). ממשק המשתמש חזר ללחצנים קטנים למניעת בלבול. (מסתמן שבגירסה 5 יתווסף תמיכה גם בעיצוב הערות שוליים).
                                תוסף עיצוב ספרי קודש גירסה 4.zip
                                עדכון:
                                @שליו הכין קובץ התקנה אוטומטית למי שרוצה תוסף-עיצוב-ספרי-קודש.rar
                                סיסמה: "מתמחים טופ"בקובץ זה אין צורך להסיר ידנית את הגירסה הקודמת

                                גירסה מס' 5.1:
                                תוסף עיצוב ספרי קודש גרסה 5.1.exe
                                וגירסה בקוד פתוח למי שרוצה:
                                תוסף עיצוב ספרי קודש גרסה 5.1.zip

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

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

                                גירסה מספר 6:
                                תוסף עיצוב תורני גירסה 6.exe
                                תוסף עיצוב תורני גרסה 6.2.exe
                                תוסף עיצוב תורני גרסה 6.3.exe
                                תוסף עיצוב תורני גרסה 6.3 (קוד פתוח).zip

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

                                שים לב! עקב שינוי השם יש להסיר את הגרסה הקודמת בצורה ידנית מתוך נתיב זה

                                %AppData%\Microsoft\Word\STARTUP
                                

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

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

                                בקשת עזרה ביצירת מאקרו

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

                                אז איפה אני צריך עזרה?

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

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

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

                                והנה ההתחלה של הקוד: (אשמח מאוד לקבל עוד הצעות לשיפורים)
                                השתדלתי לכתוב הסברים על כל שלב כדי למנוע בלבול

                                Attribute VB_Name = "Module2"
                                Option Explicit
                                
                                Sub עיצוב_מהיר()
                                'עיצוב ספרי קודש ברגעים ספורים גם על מסמכים ארוכים
                                '
                                '
                                '
                                '
                                'עיצוב חלון על עיקרון מסגרת
                                ' עיצוב מילה ראשונה על עיקרון של החלת סגנון
                                ' עיצוב שורה אחרונה על עיקרון של שלמה מימות ממתמחים טופ
                                '
                                '
                                '
                                
                                
                                'חלק א יצירת סגנון עם מסגרת -  נוצר על ידי הקלטה של יצירת סגנון - כך שאין לי מה להסיר פה באמת
                                
                                On Error Resume Next
                                    ActiveDocument.Styles.Add Name:="מילת פתיח עיצוב מהיר", Type:= _
                                    wdStyleTypeParagraph
                                    ActiveDocument.Styles("מילת פתיח עיצוב מהיר").AutomaticallyUpdate = False
                                    With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").Font
                                        .Name = "+גוף"
                                        .Size = 11
                                        .Bold = False
                                        .Italic = False
                                        .Underline = wdUnderlineNone
                                        .UnderlineColor = wdColorAutomatic
                                        .StrikeThrough = False
                                        .DoubleStrikeThrough = False
                                        .Outline = False
                                        .Emboss = False
                                        .Shadow = False
                                        .Hidden = False
                                        .SmallCaps = False
                                        .AllCaps = False
                                        .Color = wdColorAutomatic
                                        .Engrave = False
                                        .Superscript = False
                                        .Subscript = False
                                        .Scaling = 100
                                        .Kerning = 1
                                        .Animation = wdAnimationNone
                                        .SizeBi = 11
                                        .NameBi = "Arial"
                                        .BoldBi = True
                                        .ItalicBi = False
                                        .Ligatures = wdLigaturesStandardContextual
                                        .NumberSpacing = wdNumberSpacingDefault
                                        .NumberForm = wdNumberFormDefault
                                        .StylisticSet = wdStylisticSetDefault
                                        .ContextualAlternates = 0
                                    End With
                                    With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").ParagraphFormat
                                        .LeftIndent = CentimetersToPoints(0)
                                        .RightIndent = CentimetersToPoints(0)
                                        .SpaceBefore = 0
                                        .SpaceBeforeAuto = False
                                        .SpaceAfter = 8
                                        .SpaceAfterAuto = False
                                        .LineSpacingRule = wdLineSpaceMultiple
                                        .LineSpacing = LinesToPoints(1.08)
                                        .Alignment = wdAlignParagraphLeft
                                        .WidowControl = True
                                        .KeepWithNext = False
                                        .KeepTogether = False
                                        .PageBreakBefore = False
                                        .NoLineNumber = False
                                        .Hyphenation = True
                                        .FirstLineIndent = CentimetersToPoints(0)
                                        .OutlineLevel = wdOutlineLevelBodyText
                                        .CharacterUnitLeftIndent = 0
                                        .CharacterUnitRightIndent = 0
                                        .CharacterUnitFirstLineIndent = 0
                                        .LineUnitBefore = 0
                                        .LineUnitAfter = 0
                                        .MirrorIndents = False
                                        .TextboxTightWrap = wdTightNone
                                        .CollapsedByDefault = False
                                        .ReadingOrder = wdReadingOrderRtl
                                    End With
                                    ActiveDocument.Styles("מילת פתיח עיצוב מהיר"). _
                                        NoSpaceBetweenParagraphsOfSameStyle = False
                                    ActiveDocument.Styles("מילת פתיח עיצוב מהיר").ParagraphFormat.TabStops. _
                                        ClearAll
                                    With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").ParagraphFormat
                                        With .Shading
                                            .Texture = wdTextureNone
                                            .ForegroundPatternColor = wdColorAutomatic
                                            .BackgroundPatternColor = wdColorAutomatic
                                        End With
                                        .Borders(wdBorderLeft).LineStyle = wdLineStyleNone
                                        .Borders(wdBorderRight).LineStyle = wdLineStyleNone
                                        .Borders(wdBorderTop).LineStyle = wdLineStyleNone
                                        .Borders(wdBorderBottom).LineStyle = wdLineStyleNone
                                        With .Borders
                                            .DistanceFromTop = 1
                                            .DistanceFromLeft = 4
                                            .DistanceFromBottom = 1
                                            .DistanceFromRight = 4
                                            .Shadow = False
                                        End With
                                    End With
                                    With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").Frame
                                        .TextWrap = True
                                        .WidthRule = wdFrameAuto
                                        .HeightRule = wdFrameAuto
                                        .HorizontalPosition = wdFrameRight
                                        .RelativeHorizontalPosition = wdRelativeHorizontalPositionColumn
                                        .VerticalPosition = CentimetersToPoints(0)
                                        .RelativeVerticalPosition = wdRelativeVerticalPositionParagraph
                                        .HorizontalDistanceFromText = CentimetersToPoints(0.13)
                                        .VerticalDistanceFromText = CentimetersToPoints(0)
                                        .LockAnchor = False
                                    End With
                                On Error GoTo 0
                                    
                                'חלק ב החלת העיצוב
                                    
                                'החלת עיצוב שורה אחרונה
                                    
                                'שינוי הטאבים ל- 0
                                    Selection.ParagraphFormat.TabStops.ClearAll
                                    ActiveDocument.DefaultTabStop = CentimetersToPoints(0)
                                
                                'הוספת טאב בסוף כל פיסקה
                                    Selection.WholeStory
                                    Selection.ParagraphFormat.Alignment = wdAlignParagraphDistribute
                                    Selection.Find.ClearFormatting
                                    Selection.Find.Replacement.ClearFormatting
                                    With Selection.Find
                                        .Text = "^p"
                                        .Replacement.Text = "^t^&"
                                        .Forward = True
                                        .Wrap = wdFindContinue
                                        .Format = False
                                        .MatchCase = False
                                        .MatchWholeWord = False
                                        .MatchKashida = False
                                        .MatchDiacritics = False
                                        .MatchAlefHamza = False
                                        .MatchControl = False
                                        .MatchAllWordForms = False
                                        .MatchSoundsLike = False
                                        .MatchWildcards = False
                                    End With
                                    
                                    Selection.Find.Execute Replace:=wdReplaceAll
                                    
                                'החלת עיצוב חלון ועיצוב מילה ראשונה
                                
                                'החלת סימן החרגה עבור פיסקאות מודגשות (כותרות)
                                Selection.Find.ClearFormatting
                                    Selection.Find.Replacement.ClearFormatting
                                    With Selection.Find
                                        .Text = ""
                                        .Replacement.Text = "^s^s^s^s^&"
                                        .Forward = True
                                        .Wrap = wdFindContinue
                                        .Format = True
                                        .Font.BoldBi = True
                                        .MatchCase = False
                                        .MatchWholeWord = False
                                        .MatchKashida = False
                                        .MatchDiacritics = False
                                        .MatchAlefHamza = False
                                        .MatchControl = False
                                        .MatchAllWordForms = False
                                        .MatchSoundsLike = False
                                        .MatchWildcards = False
                                    End With
                                    
                                    Selection.Find.Execute Replace:=wdReplaceAll
                                    
                                'סימון המילה הראושנה והפרדתו מהפיסקה שאחריו (כדי שהסגנון יחול רק עליו ולא על כל הפיסקה
                                'אין אפשרות שיחול רק עליו בלי זה כי צריך להחיל עליו מסגרת
                                'אין בעיה במה שהואנפרד כי המסגרת מוגדרת לקבץ אותו יחד עם הפיסקה שאחריו
                                    
                                    Selection.Find.ClearFormatting
                                    Selection.Find.Replacement.ClearFormatting
                                    With Selection.Find
                                        .Text = "(^13)([!^s]@ )"
                                        .Replacement.Text = "\1^+^=^~^s\2^s^~^=^+^p"
                                        .Forward = True
                                        .Wrap = wdFindContinue
                                        .MatchCase = False
                                        .MatchWholeWord = False
                                        .MatchKashida = False
                                        .MatchDiacritics = False
                                        .MatchAlefHamza = False
                                        .MatchControl = False
                                        .MatchAllWordForms = False
                                        .MatchSoundsLike = False
                                        .MatchWildcards = True
                                    End With
                                    Selection.Find.Execute Replace:=wdReplaceAll
                                    
                                'החלת סגנון מילה ראשונה כולל מסגרת
                                    Selection.Find.ClearFormatting
                                    Selection.Find.Replacement.ClearFormatting
                                    Application.ScreenRefresh
                                    Selection.Find.Replacement.style = ActiveDocument.Styles("מילת פתיח עיצוב מהיר")
                                   
                                    With Selection.Find
                                        .Text = "(^+^=^~^s)(*)(^s^~^=^+)"
                                        .Replacement.Text = "\2"
                                        .Forward = True
                                        .Wrap = wdFindContinue
                                        .Format = True
                                        .MatchCase = False
                                        .MatchWholeWord = False
                                        .MatchKashida = False
                                        .MatchDiacritics = False
                                        .MatchAlefHamza = False
                                        .MatchControl = False
                                        .MatchAllWordForms = False
                                        .MatchSoundsLike = False
                                        .MatchWildcards = True
                                    End With
                                    Selection.Find.Execute Replace:=wdReplaceAll
                                    
                                'ניקוי הסימנים מפסקאות מודגשות (כותרות)
                                    Selection.Find.ClearFormatting
                                    Selection.Find.Replacement.ClearFormatting
                                    With Selection.Find
                                        .Text = "^s^s^s^s"
                                        .Replacement.Text = ""
                                        .Forward = True
                                        .Wrap = wdFindContinue
                                        .Format = False
                                        .MatchCase = False
                                        .MatchWholeWord = False
                                        .MatchKashida = False
                                        .MatchDiacritics = False
                                        .MatchAlefHamza = False
                                        .MatchControl = False
                                        .MatchAllWordForms = False
                                        .MatchSoundsLike = False
                                        .MatchWildcards = True
                                    End With
                                    
                                    Selection.Find.Execute Replace:=wdReplaceAll
                                    
                                    
                                End Sub
                                
                                

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

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

                                  עריכה נוכחית:
                                  בקרוב פוסט ישמש רק עבור תגובות הפוסט הועבר לכאן
                                  https://mitmachim.top/post/724341


                                  תוסף תורני לוורד - חינמי

                                  a4a71912-0777-40a3-b734-1c8afded5662-image.png

                                  קוד פתוח (הקוד הוא: 1234)
                                  תוסף-עיצוב-תורני-גרסה-7.9.zip


                                  גירסת התקנה אוטומטית
                                  **תוסף-עיצוב-תורני-7.9.exe **


                                  גירסת האדם החושב
                                  לפרטים על גירסה זו לחץ כאן


                                  • למי שנחסם לו התוסף יש לפעול לפי ההוראות כאן

                                  להלן חלק מהשינויים והשיפורים שנעשו בגירסה זו

                                  1. יוזרפורם מרווחים משופר
                                  2. מספור עברי משופר
                                  3. הערות מספור עברי - חדש!
                                  4. סוגריים משופר נוסף לו קיצור דרך על ידי לחיצה יחד עם ALT
                                  5. יוזרפורם של stylref
                                  6. הוספה לשדה seq
                                  7. יוזרפורם טאבים וכניסות משופר
                                  8. חילוץ טקסטים משופר
                                  9. חיפוש והחלפה מרובים עם יוזר פורם משופר
                                  10. בדיקת קוד לחיפוש והחלפה משופר
                                  11. גימטריא נוסף המרת אותיות למספרים
                                    ועוד ועוד....

                                  מידע נוסף:
                                  התוסף נבנה על בסיס מאקרואים שפורסמו כאן. באם הדבר יתאפשר התוסף יתעדכן מפעם לפעם על פי המאקרואים הנ"ל ובלי נדר.

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

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

                                  אשמח לקבל הערות והארות

                                  נ.ב. קרדיט ותודה גדולה ל- @NykUser על כל העזרה ועל כל הקודים הנפלאים שהוא סיפק עבור תוסף זה. כמו"כ תודה גדולה ל @מאקרו ול @menajemmendel ול @דאנציג ו @צדיק-וטוב-לו-0 ו @האדם-החושב ו @מניין ולכל מי שעזר בשדרוג ובבניית התוסף (אבקש את מחילת כל מי שלא הזכרתי את שמו בפרטות עקב ריבוי העוזרים).


                                  גירסאות קודמות

                                  גירסה מס' 1:
                                  תוסף עיצוב ספרי קודש.zip
                                  הערה: יש בעיות בגירסה זו אצל חלק מהמשתמשים יש להשתמש בגירסה 2 והלאה.

                                  גירסה מס' 2:
                                  תוסף עיצוב ספרי קודש גירסה 2.zip
                                  תוקנו הבעיות בגירסה מס' 1. וכן תיקונים ושיפורים בפקודות המאקרו.

                                  גירסה מס' 3:
                                  תוסף עיצוב ספרי קודש גירסה 3.zip
                                  שדרוג יפה לממשק המשתמש

                                  גירסה מס' 4:
                                  הקוד שודרג בכלליות. נוסף עיצוב חלון כפול (מקובל בחלק מהספרים בפסקאות עם שלוש שורות). ממשק המשתמש חזר ללחצנים קטנים למניעת בלבול. (מסתמן שבגירסה 5 יתווסף תמיכה גם בעיצוב הערות שוליים).
                                  תוסף עיצוב ספרי קודש גירסה 4.zip
                                  עדכון:
                                  @שליו הכין קובץ התקנה אוטומטית למי שרוצה תוסף-עיצוב-ספרי-קודש.rar
                                  סיסמה: "מתמחים טופ"בקובץ זה אין צורך להסיר ידנית את הגירסה הקודמת

                                  גירסה מס' 5.1:
                                  תוסף עיצוב ספרי קודש גרסה 5.1.exe
                                  וגירסה בקוד פתוח למי שרוצה:
                                  תוסף עיצוב ספרי קודש גרסה 5.1.zip

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

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

                                  גירסה מספר 6:
                                  תוסף עיצוב תורני גירסה 6.exe
                                  תוסף עיצוב תורני גרסה 6.2.exe
                                  תוסף עיצוב תורני גרסה 6.3.exe
                                  תוסף עיצוב תורני גרסה 6.3 (קוד פתוח).zip

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

                                  שים לב! עקב שינוי השם יש להסיר את הגרסה הקודמת בצורה ידנית מתוך נתיב זה

                                  %AppData%\Microsoft\Word\STARTUP
                                  

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

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

                                  @pcinfogmach

                                  גירסה מס' 5:

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

                                  עריכה:
                                  זה התרגום של ההודעה:
                                  עיצוב ספרי קודש (1).png

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

                                    @pcinfogmach

                                    גירסה מס' 5:

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

                                    עריכה:
                                    זה התרגום של ההודעה:
                                    עיצוב ספרי קודש (1).png

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

                                    @simcha33345
                                    חששתי שזה יקרה היה בעיה דומה בגירסה 1 אנסה לעכן בגירסה הבאה בלי נדר.
                                    אם תוכל לעשות לי טובה אחת לבדוק את המאקרו הזה אם הוא גם לא עובד.

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

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

                                      @simcha33345
                                      חששתי שזה יקרה היה בעיה דומה בגירסה 1 אנסה לעכן בגירסה הבאה בלי נדר.
                                      אם תוכל לעשות לי טובה אחת לבדוק את המאקרו הזה אם הוא גם לא עובד.

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

                                      @pcinfogmach אוקי, אני שולח לידיד ואחכה לתגובתו.
                                      אעדכן כשיעדכן אותי בס"ד.

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

                                        בקשת עזרה ביצירת מאקרו

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

                                        אז איפה אני צריך עזרה?

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

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

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

                                        והנה ההתחלה של הקוד: (אשמח מאוד לקבל עוד הצעות לשיפורים)
                                        השתדלתי לכתוב הסברים על כל שלב כדי למנוע בלבול

                                        Attribute VB_Name = "Module2"
                                        Option Explicit
                                        
                                        Sub עיצוב_מהיר()
                                        'עיצוב ספרי קודש ברגעים ספורים גם על מסמכים ארוכים
                                        '
                                        '
                                        '
                                        '
                                        'עיצוב חלון על עיקרון מסגרת
                                        ' עיצוב מילה ראשונה על עיקרון של החלת סגנון
                                        ' עיצוב שורה אחרונה על עיקרון של שלמה מימות ממתמחים טופ
                                        '
                                        '
                                        '
                                        
                                        
                                        'חלק א יצירת סגנון עם מסגרת -  נוצר על ידי הקלטה של יצירת סגנון - כך שאין לי מה להסיר פה באמת
                                        
                                        On Error Resume Next
                                            ActiveDocument.Styles.Add Name:="מילת פתיח עיצוב מהיר", Type:= _
                                            wdStyleTypeParagraph
                                            ActiveDocument.Styles("מילת פתיח עיצוב מהיר").AutomaticallyUpdate = False
                                            With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").Font
                                                .Name = "+גוף"
                                                .Size = 11
                                                .Bold = False
                                                .Italic = False
                                                .Underline = wdUnderlineNone
                                                .UnderlineColor = wdColorAutomatic
                                                .StrikeThrough = False
                                                .DoubleStrikeThrough = False
                                                .Outline = False
                                                .Emboss = False
                                                .Shadow = False
                                                .Hidden = False
                                                .SmallCaps = False
                                                .AllCaps = False
                                                .Color = wdColorAutomatic
                                                .Engrave = False
                                                .Superscript = False
                                                .Subscript = False
                                                .Scaling = 100
                                                .Kerning = 1
                                                .Animation = wdAnimationNone
                                                .SizeBi = 11
                                                .NameBi = "Arial"
                                                .BoldBi = True
                                                .ItalicBi = False
                                                .Ligatures = wdLigaturesStandardContextual
                                                .NumberSpacing = wdNumberSpacingDefault
                                                .NumberForm = wdNumberFormDefault
                                                .StylisticSet = wdStylisticSetDefault
                                                .ContextualAlternates = 0
                                            End With
                                            With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").ParagraphFormat
                                                .LeftIndent = CentimetersToPoints(0)
                                                .RightIndent = CentimetersToPoints(0)
                                                .SpaceBefore = 0
                                                .SpaceBeforeAuto = False
                                                .SpaceAfter = 8
                                                .SpaceAfterAuto = False
                                                .LineSpacingRule = wdLineSpaceMultiple
                                                .LineSpacing = LinesToPoints(1.08)
                                                .Alignment = wdAlignParagraphLeft
                                                .WidowControl = True
                                                .KeepWithNext = False
                                                .KeepTogether = False
                                                .PageBreakBefore = False
                                                .NoLineNumber = False
                                                .Hyphenation = True
                                                .FirstLineIndent = CentimetersToPoints(0)
                                                .OutlineLevel = wdOutlineLevelBodyText
                                                .CharacterUnitLeftIndent = 0
                                                .CharacterUnitRightIndent = 0
                                                .CharacterUnitFirstLineIndent = 0
                                                .LineUnitBefore = 0
                                                .LineUnitAfter = 0
                                                .MirrorIndents = False
                                                .TextboxTightWrap = wdTightNone
                                                .CollapsedByDefault = False
                                                .ReadingOrder = wdReadingOrderRtl
                                            End With
                                            ActiveDocument.Styles("מילת פתיח עיצוב מהיר"). _
                                                NoSpaceBetweenParagraphsOfSameStyle = False
                                            ActiveDocument.Styles("מילת פתיח עיצוב מהיר").ParagraphFormat.TabStops. _
                                                ClearAll
                                            With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").ParagraphFormat
                                                With .Shading
                                                    .Texture = wdTextureNone
                                                    .ForegroundPatternColor = wdColorAutomatic
                                                    .BackgroundPatternColor = wdColorAutomatic
                                                End With
                                                .Borders(wdBorderLeft).LineStyle = wdLineStyleNone
                                                .Borders(wdBorderRight).LineStyle = wdLineStyleNone
                                                .Borders(wdBorderTop).LineStyle = wdLineStyleNone
                                                .Borders(wdBorderBottom).LineStyle = wdLineStyleNone
                                                With .Borders
                                                    .DistanceFromTop = 1
                                                    .DistanceFromLeft = 4
                                                    .DistanceFromBottom = 1
                                                    .DistanceFromRight = 4
                                                    .Shadow = False
                                                End With
                                            End With
                                            With ActiveDocument.Styles("מילת פתיח עיצוב מהיר").Frame
                                                .TextWrap = True
                                                .WidthRule = wdFrameAuto
                                                .HeightRule = wdFrameAuto
                                                .HorizontalPosition = wdFrameRight
                                                .RelativeHorizontalPosition = wdRelativeHorizontalPositionColumn
                                                .VerticalPosition = CentimetersToPoints(0)
                                                .RelativeVerticalPosition = wdRelativeVerticalPositionParagraph
                                                .HorizontalDistanceFromText = CentimetersToPoints(0.13)
                                                .VerticalDistanceFromText = CentimetersToPoints(0)
                                                .LockAnchor = False
                                            End With
                                        On Error GoTo 0
                                            
                                        'חלק ב החלת העיצוב
                                            
                                        'החלת עיצוב שורה אחרונה
                                            
                                        'שינוי הטאבים ל- 0
                                            Selection.ParagraphFormat.TabStops.ClearAll
                                            ActiveDocument.DefaultTabStop = CentimetersToPoints(0)
                                        
                                        'הוספת טאב בסוף כל פיסקה
                                            Selection.WholeStory
                                            Selection.ParagraphFormat.Alignment = wdAlignParagraphDistribute
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = "^p"
                                                .Replacement.Text = "^t^&"
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = False
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchAllWordForms = False
                                                .MatchSoundsLike = False
                                                .MatchWildcards = False
                                            End With
                                            
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                        'החלת עיצוב חלון ועיצוב מילה ראשונה
                                        
                                        'החלת סימן החרגה עבור פיסקאות מודגשות (כותרות)
                                        Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = ""
                                                .Replacement.Text = "^s^s^s^s^&"
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = True
                                                .Font.BoldBi = True
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchAllWordForms = False
                                                .MatchSoundsLike = False
                                                .MatchWildcards = False
                                            End With
                                            
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                        'סימון המילה הראושנה והפרדתו מהפיסקה שאחריו (כדי שהסגנון יחול רק עליו ולא על כל הפיסקה
                                        'אין אפשרות שיחול רק עליו בלי זה כי צריך להחיל עליו מסגרת
                                        'אין בעיה במה שהואנפרד כי המסגרת מוגדרת לקבץ אותו יחד עם הפיסקה שאחריו
                                            
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = "(^13)([!^s]@ )"
                                                .Replacement.Text = "\1^+^=^~^s\2^s^~^=^+^p"
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchAllWordForms = False
                                                .MatchSoundsLike = False
                                                .MatchWildcards = True
                                            End With
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                        'החלת סגנון מילה ראשונה כולל מסגרת
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            Application.ScreenRefresh
                                            Selection.Find.Replacement.style = ActiveDocument.Styles("מילת פתיח עיצוב מהיר")
                                           
                                            With Selection.Find
                                                .Text = "(^+^=^~^s)(*)(^s^~^=^+)"
                                                .Replacement.Text = "\2"
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = True
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchAllWordForms = False
                                                .MatchSoundsLike = False
                                                .MatchWildcards = True
                                            End With
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                        'ניקוי הסימנים מפסקאות מודגשות (כותרות)
                                            Selection.Find.ClearFormatting
                                            Selection.Find.Replacement.ClearFormatting
                                            With Selection.Find
                                                .Text = "^s^s^s^s"
                                                .Replacement.Text = ""
                                                .Forward = True
                                                .Wrap = wdFindContinue
                                                .Format = False
                                                .MatchCase = False
                                                .MatchWholeWord = False
                                                .MatchKashida = False
                                                .MatchDiacritics = False
                                                .MatchAlefHamza = False
                                                .MatchControl = False
                                                .MatchAllWordForms = False
                                                .MatchSoundsLike = False
                                                .MatchWildcards = True
                                            End With
                                            
                                            Selection.Find.Execute Replace:=wdReplaceAll
                                            
                                            
                                        End Sub
                                        
                                        
                                        ד מנותק
                                        ד מנותק
                                        דאנציג
                                        כתב ב נערך לאחרונה על ידי
                                        #78

                                        @pcinfogmach כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

                                        הפיתרון שלי הוא: להחריג כל פיסקה מודגשת.

                                        לדעתי הפתרון הפשוט הוא להחריג את הפסקאות הממורכזות, ולאו דווקא מודגשות...

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

                                          @בוקר-טוב
                                          תודה. אנסה לטפל בזה בגירסאות הבאות בלי נדר.

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

                                          @pcinfogmach כתב בלהורדה | תוסף חדש לוורד - עיצוב ספרי קודש:

                                          תודה. אנסה לטפל בזה בגירסאות הבאות בלי נדר.

                                          אולי תעלה את המסמך בינתיים לכאן
                                          לתועלת כולנו.

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

                                          • התחברות

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

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