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

בקשת מידע | המרת מרווח בין שורות בוורד מ'בודד'/'מרובה' וכו' ל'מדויק'

מתוזמן נעוץ נעול הועבר נפתר עזרה הדדית - וורד
15 פוסטים 3 כותבים 155 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ש מנותק
    ש מנותק
    שלמה11
    כתב נערך לאחרונה על ידי שלמה11
    #1

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

    עריכה: ב"ה הוצאתי מאקרו בנושא אפשר למצוא אותו פה

    S תגובה 1 תגובה אחרונה
    0
    • S מנותק
      S מנותק
      shishko
      השיב לשלמה11 נערך לאחרונה על ידי
      #2

      @שלמה11 הופך את מרווח השורות למדויק

      Sub החלפת_מרווח_שורות_מבודד_למדויק()
          With Selection.ParagraphFormat
              .LeftIndent = CentimetersToPoints(0)
              .RightIndent = CentimetersToPoints(0)
              .SpaceBefore = 0
              .SpaceBeforeAuto = False
              .SpaceAfter = 8
              .SpaceAfterAuto = False
              .LineSpacingRule = wdLineSpaceExactly
              .LineSpacing = 12
              .Alignment = wdAlignParagraphRight
              .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
      End Sub
      

      להבא ניתן לעשות הקלטת מאקרו!!!

      ש תגובה 1 תגובה אחרונה
      0
      • ש מנותק
        ש מנותק
        שלמה11
        השיב לshishko נערך לאחרונה על ידי
        #3

        @shishko לא הבנת את כוונתי
        בפעולה שאתה עשית הרווח בין השורות מוגדר אוטו' למרווח מדויק 12 נק' (ברירת המחדל) מה שאומר שהרווח בין השורות קטן משמעותית מאשר מרווח 'בודד'
        אני מחפש קוד שיודע לחשב את הרווח בין השורות כאשר המרווח 'בודד' ולאחמ"כ להמיר אותו ל'מדויק' מבלי לשנות את הרווח בין השורות.

        S תגובה 1 תגובה אחרונה
        0
        • S מנותק
          S מנותק
          shishko
          השיב לשלמה11 נערך לאחרונה על ידי
          #4

          @שלמה11

          Sub החלפת_מרווח_שורות_מבודד_למדויק()
              Dim fontSize As Single
          
              ' קבלת גובה הגופן הנוכחי
              fontSize = Selection.Font.Size
          
              ' הגדרת מרווח השורות ל-"מדויק" בגובה הגופן
              With Selection.ParagraphFormat
                  .LineSpacingRule = wdLineSpaceExactly
                  .lineSpacing = fontSize
              End With
          
              MsgBox "מרווח השורות הוקבע ל-" & fontSize & " נקודות בדיוק."
          End Sub
          

          תעדכן אם עובד

          ש תגובה 1 תגובה אחרונה
          0
          • ש מנותק
            ש מנותק
            שלמה11
            השיב לshishko נערך לאחרונה על ידי
            #5

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

            S 2 תגובות תגובה אחרונה
            0
            • S מנותק
              S מנותק
              shishko
              השיב לשלמה11 נערך לאחרונה על ידי shishko
              #6

              @שלמה11

              Sub החלפת_מרווח_שורות_מבודד_למדויק()
                  Dim fontSize As Single
                  Dim correctionFactor As Single
                  
                  correctionFactor = 1.155
                  
                  ' קבלת גודל הגופן הנוכחי
                  fontSize = Selection.Font.Size
                  
                  Dim adjustedSpacing As Single
                  adjustedSpacing = fontSize * correctionFactor
                  
                  ' הגדרת מרווח השורות ל-"מדויק"
                  With Selection.ParagraphFormat
                      .LineSpacingRule = wdLineSpaceExactly
                      .lineSpacing = adjustedSpacing
                  End With
                  
                  MsgBox "מרווח השורות הוקבע ל-" & Round(adjustedSpacing, 2) & " נקודות בדיוק."
              End Sub
              

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

              תגובה 1 תגובה אחרונה
              0
              • S מנותק
                S מנותק
                shishko
                השיב לשלמה11 נערך לאחרונה על ידי shishko
                #7

                @שלמה11 האמת שזה הכי פשוט ועובד מצויין

                Sub החלפת_מרווח_שורות_מבודד_למדויק()
                    With Selection.ParagraphFormat
                        .LineSpacingRule = wdLineSpaceExactly
                        .lineSpacing = Selection.Font.Size * 1.155
                    End With
                End Sub
                
                
                ש תגובה 1 תגובה אחרונה
                0
                • ש מנותק
                  ש מנותק
                  שלמה11
                  השיב לshishko נערך לאחרונה על ידי שלמה11
                  #8

                  @shishko תודה רבה
                  אבל נראה לי שזה עובד בפונט אריאל בלבד

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

                  S תגובה 1 תגובה אחרונה
                  0
                  • S מנותק
                    S מנותק
                    shishko
                    השיב לשלמה11 נערך לאחרונה על ידי
                    #9

                    @שלמה11 מה זה עושה בפונטים האחרים

                    ש תגובה 1 תגובה אחרונה
                    0
                    • ש מנותק
                      ש מנותק
                      שלמה11
                      השיב לshishko נערך לאחרונה על ידי שלמה11
                      #10

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

                      S תגובה 1 תגובה אחרונה
                      0
                      • S מנותק
                        S מנותק
                        shishko
                        השיב לשלמה11 נערך לאחרונה על ידי
                        #11

                        @שלמה11

                        Sub החלפת_מרווח_שורות_ישיר()
                            With Selection.ParagraphFormat
                                .LineSpacingRule = wdLineSpaceExactly
                                
                                ' חישוב המרווח האופטימלי לפי גובה הגופן ומאפייניו
                                Dim optimalSpacing As Double
                                Dim fontSize As Double
                                fontSize = Selection.Font.Size
                                
                                ' התאמה לפי סוג הגופן
                                Select Case Selection.Font.Name
                                    Case "Arial"
                                        optimalSpacing = fontSize * 1.155
                                    Case "David", "דוד"
                                        optimalSpacing = fontSize * 1.2
                                    Case "Times New Roman"
                                        optimalSpacing = fontSize * 1.15
                                    Case "Narkisim", "נרקיסים"
                                        optimalSpacing = fontSize * 1.18
                                    Case "Tahoma"
                                        optimalSpacing = fontSize * 1.16
                                    Case "Calibri"
                                        optimalSpacing = fontSize * 1.15
                                    Case "Helvetica"
                                        optimalSpacing = fontSize * 1.16
                                    Case "Verdana"
                                        optimalSpacing = fontSize * 1.17
                                    Case "Frank Ruehl", "פרנק-ריהל"
                                        optimalSpacing = fontSize * 1.19
                                    Case Else
                                        ' ברירת מחדל חכמה לגופנים אחרים
                                        If Selection.Font.Name Like "*Serif*" Or _
                                           Selection.Font.Name Like "*דוד*" Or _
                                           Selection.Font.Name Like "*נרקיס*" Or _
                                           Selection.Font.Name Like "*פרנק*" Then
                                            optimalSpacing = fontSize * 1.2
                                        Else
                                            optimalSpacing = fontSize * 1.16
                                        End If
                                End Select
                                
                                ' התאמות נוספות לפי מאפייני הטקסט
                                If Selection.Font.Bold Then
                                    optimalSpacing = optimalSpacing * 1.02
                                End If
                                
                                If fontSize <= 10 Then
                                    optimalSpacing = optimalSpacing * 1.02
                                ElseIf fontSize >= 16 Then
                                    optimalSpacing = optimalSpacing * 0.98
                                End If
                                
                                ' יישום המרווח המחושב
                                .LineSpacing = optimalSpacing
                            End With
                        End Sub
                        

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

                        ש תגובה 1 תגובה אחרונה
                        0
                        • ש מנותק
                          ש מנותק
                          שלמה11
                          השיב לshishko נערך לאחרונה על ידי שלמה11
                          #12

                          @shishko הנה הקוד:

                          Sub המרת_מרווח_בין_שורות_למדויק()
                              Dim rng As Range
                              Dim paragraphTop As Single
                              Dim paragraphBottom As Single
                              Dim paragraphHeight As Single
                              Dim currentParagraph As Paragraph
                              Dim lineCount As Long
                              Dim Exactspacing As Double
                              
                              
                              ' קבלת הפיסקה הנוכחית
                              Set currentParagraph = Selection.Paragraphs(1)
                              
                              ' בחירת כל הפיסקה הנוכחית
                              currentParagraph.Range.Select
                          
                              'הגדרת טווח לפסקה הראשונה
                              Set rng = Selection.Range
                          
                              ' קבלת המיקום העליון של הפסקה
                              paragraphTop = rng.Information(wdVerticalPositionRelativeToPage)
                              
                              ' קבלת המיקום התחתון של הפיסקה
                              Selection.Move Unit:=wdCharacter, Count:=1
                              Selection.Move Unit:=wdCharacter, Count:=-1
                              paragraphBottom = Selection.Information(wdVerticalPositionRelativeToPage)
                          
                              ' חישוב גובה הפסקה
                              paragraphHeight = paragraphBottom - paragraphTop
                              
                              ' חישוב מספר השורות בפיסקה
                              lineCount = Selection.Paragraphs(1).Range.ComputeStatistics(wdStatisticLines)
                              
                              Exactspacing = paragraphHeight / (lineCount - 1)
                               With Selection.ParagraphFormat
                                  .LineSpacingRule = wdLineSpaceExactly
                                  .lineSpacing = Exactspacing
                              End With
                          End Sub
                          
                          

                          הקוד הזה ממיר באופן מדוייק לא משנה מה הפונט ולא משנה מה המרווח בין השורות.

                          מ תגובה 1 תגובה אחרונה
                          4
                          • מ מנותק
                            מ מנותק
                            מניין
                            השיב לשלמה11 נערך לאחרונה על ידי
                            #13

                            @שלמה11 כתב ב[בקשת מידע | המרת מרווח בין שורות בוורד

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

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

                            ש תגובה 1 תגובה אחרונה
                            0
                            • ש מנותק
                              ש מנותק
                              שלמה11
                              השיב למניין נערך לאחרונה על ידי
                              #14

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

                              אבל זמן חורף מתחיל...

                              מ תגובה 1 תגובה אחרונה
                              0
                              • מ מנותק
                                מ מנותק
                                מניין
                                השיב לשלמה11 נערך לאחרונה על ידי מניין
                                #15

                                @שלמה11 כתב בבקשת מידע | המרת מרווח בין שורות בוורד מ'בודד'/'מרובה' וכו' ל'מדויק':

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

                                אבל זמן חורף מתחיל...

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

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

                                • התחברות

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

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