בירור | קוד מאקרו ליישור שני טורים בוורד
-
נראה לי שכדאי שההגדרות האישיות ל-MIN ו-MAX תשמרנה באותו קובץ בלבד לפעמים הבאות. כך שלא ישתבש העימוד של אותו הספר או העלון.
אך אולי טוב שתהיה אפשרות לשמור הגדרות לכל המסמכים.
בכל אופן איני יודע איך לעשות זאת. אנסה לשחק עם הקודים דלעיל.תודה רבה לשולחי הקודים, על הפוסטים המתעדכנים!
מגבלה נוספת יש בקוד,
שהמעמדים בוורד שעתידים להשתמש בו משתמשים גם בתוסף שמדגיש את המילה הראשונה, ועושה תחתיה "חלון" על ידי גזירת המילה לתוך תיבת טקסט.
הדבר גורם לשיבוש, כי הקוד רץ על השורות במסמך, ובודק היכן הוא נמצא (הייתי צריך לנחש אם אני בטור הראשון או השני, ולכן בדקתי שורה אחר שורה, לפי המרחק מגבול הדף התחתון).
תיבת הטקסט הנזכרת מוגדרת כשורה 1, והמילה שאחריה כשורה 2. וכשאני עובר לשורה 2 המחשב מזהה שעברו שורה אך לא ירדו למטה בדף. והוא חושב שעברתי לשורה המקבילה בעמודה השניה. -
@שמעלקא-0
האמת שדיברתי עם יעקובוב על זה והוא אמר לי שגם אצלו אי אפשר לעבוד עם זה, אלא שלו יש שיטה אחרת במילת הפתיח*, (איני יודע אם מותר לספר כיצד עובדת השיטה שלו).בכל אופן, אולי אפשר לפתח לזה תיקון בעה"י, אך דיה לצרה בשעתה, אני רוצה שהתוסף שלך להשוואת טורים יראה אור כמו שצריך, וכן התוסף של רבין @נוכחות שליט"א לרצף הערות בעה"י, זה אמור להביא נחת ואור ליהודים וחסכון גדול בפיזור ממון לפי רצונו יתברך.
*כלומר שמי שמשתמש במילת הפתיח שלו ניצל מזה, אך מי שמשתמש בשלנו זה בעיה, אני אישית ניסיתי עם שלו ולא עבד, ולמה זה טוב לדעת את זה? שלא יבואו לחשוב שזה בעיה רק בתוסף שלך ואילו בתוסף שעולה כסף זה בסדר.
אגב, טוב לדעת שהתוסף של יעקובוב ליישור הטורים עולה 280, ולהערות רציפות 600, ראה כאן.
-
-
@שמעלקא-0 כתב
תיבת הטקסט הנזכרת מוגדרת כשורה 1, והמילה שאחריה כשורה 2. וכשאני עובר לשורה 2 המחשב מזהה שעברו שורה אך לא ירדו למטה בדף. והוא חושב שעברתי לשורה המקבילה בעמודה השניה.
בקוד שהעליתי כאן לא יהא לך בעיה זה
@es0583292679 כתב
אלא שלו יש שיטה אחרת במילת הפתיח (איני יודע אם מותר לספר כיצד עובדת השיטה שלו).
אני לא יודע מה השיטה שלו, אבל יש שיטה מאוד פשוטה בלי תיבת טקסט, קוד זה יכנס חלון לכל קטע בתוך הבחירה
Set MyRange = Selection.Range For i = 1 To MyRange.Paragraphs.Count Set para = MyRange.Paragraphs(i).Range If MyRange.Paragraphs(i).Alignment = wdAlignParagraphJustify = False Then GoTo nxt Select Case para.ComputeStatistics(wdStatisticLines) Case 1: GoTo nxt: 'Case 2: GoTo nxt Case Else With para: .Collapse: .MoveUntil cset:=" ": .MoveEnd: .Collapse Direction:=wdCollapseEnd If .Previous(Count:=2) = Chr(93) Or .Previous(Count:=2) = Chr(41) Then .MoveUntil cset:=" ": .MoveEnd: .Collapse Direction:=wdCollapseEnd End If .Select End With With Selection: .EndKey Unit:=wdLine If .Text = Chr(11) Then GoTo nxt: .TypeText Text:=Chr(11) & ChrW(8197) Set Char = Selection.Range .Previous.Font.Spacing = Char.Information(wdHorizontalPositionRelativeToTextBoundary) - para.Information(wdHorizontalPositionRelativeToTextBoundary) End With End Select nxt: Next
-
@דאנציג
לא זה לא.@NykUser
הרעיון אצלי שניתן לעצבה את כל מילות הפתיח יחד, ולא רק גופן וגודל וכו', אלא גם גובה ועובי וכו'.
עריכה: @NykUser
כעת לאחר ניסוי המאקרו שלך יש לומר שהוא ממש טוב, אך לא מתאים לקובץ הניתן לשינוי, כי כל שינוי משבש את כל המסמך, זה מתאים רק למי שגמר לערוך את כל הגדרות הגופן ואולי גם הפיסקה, אך אולי עם כמה שיפורים זה יוטב, למשל שיהיה מאקרו שיחפש את התוספת וישמיט אותה - אולי עם תו נסתר - ויכניס חדש במקום זאת, ואז יהיה לזה הרצת תיקון וכן הרצת השמטה, אם כך זה יהיה ממש מוצלח! אולי אחליף את שלנו בשלך בתוכנה של כתר תורה. -
@NykUser
הקודים שלך מדהימים, מקסימים ונקיים. תודה רבה! אנסה לשפר בהם את הקוד של היישור טורים.@es0583292679
כל הכבוד על ההתלהבות שלך למען עם ישראל וכו'.להריץ את הקוד על כל המסמך זו כמעט לא בעיה. מכניסים את כולו לתוך לולאה שמדלגת לעמוד הבא, תוך בדיקה שלא היה באמצע מעבר מקטע (כותרת רחבה שמתפרסת על שני הטורים יחד, שאז צריך ליישר את חצי העמוד התחתון הקודם בפני עצמו).
אנסה לשמור הגדרות אישיות במקור חיצוני. מקווה שאצליח...
ויהיה עוד תיקון קטן בעמוד עם פסקאות מרובות מאד, שאז יוצא לפעמים שאני נותן לו מרווח מדוייק מידי, עם שלש ספרות אחרי נקודה עשרונית, שוורד לא יכול לקבל (למשל 9.312), ואז הוא מעגל את הסכום ויש אי דיוק. בע"ה נתגבר על זה.
-
כעת לאחר ניסוי המאקרו שלך יש לומר שהוא ממש טוב, אך לא מתאים לקובץ הניתן לשינוי, כי כל שינוי משבש את כל המסמך...
כן , כך זה בכל עימוד בוורד
יש לך מהלך שאינו משתנה עם הוספה? אדרבה!למשל שיהיה מאקרו שיחפש את התוספת וישמיט אותה...
יש כבר, החלון הוא פשוט תו מיוחד ואפשר לחפש ולמחוק, זהו קוד שעושה את זה לכל הבחירה אם יש ואם לאו על כל המסך
Sub delete_Holon() If Selection.Type = wdSelectionNormal Then Set MyRange = Selection.Range MyRange.SetRange Selection.Paragraphs.First.Range.START, Selection.Paragraphs.Last.Range.End Else Set MyRange = ActiveDocument.StoryRanges(Selection.StoryType) End If MyRange.find.Execute FindText:=Chr(11) & ChrW(8197), ReplaceWith:="", Forward:=True, Wrap:=wdFindStop, Replace:=wdReplaceAll End Sub
-
@NykUser כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
כן , כך זה בכל עימוד בוורד
יש לך מהלך שאינו משתנה עם הוספה? אדרבה!מה שיש בתוכנה שלנו למשל (כתר תורה).
(ומה שיש ליעקובוב, אע"פ שאינו עומד בזה אך הוא מתתקן בעה"י ע"י הרצה חוזרת, נראה לי לא ניסיתי אך זה כך לפי החשבון).
-
-
@NykUser
אנ ו מדברים כעת על מילת הפתיח.
טענו בחטים והודה לו בשעורים.במילת הפתיח זה בסדר.
בשורה הממורכזת זה באמת לא כך, אך לא כמו שאתה מציג אותה, אלא שיש יותר רווח, אתה בכוונה או בטעות השתדלתי להשאיר מילה מיותמת לכן זה מופיע כך. -
אני מעלה כאן גירסה מתוקנת של המאקרו שמיישר טורים בוורד.
עם שיפורים ניכרים בזכות החברים:
א. המאקרו מיישר את כל המסמך בלחיצה אחת, ותוך שניות בודדות!
ב. אין צורך להגדיר בכל פעם את המרווח המינימלי והמקסימלי בין פיסקאות.
אך מומלץ לעשות זאת בלחיצה על alt+0
הצלחה וברכההנה הקובץ
LineToLines4.dot -
@ששמעון כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
@שמעלקא-0 האם כשאני מתקין את התבנית הזאת אני בעצם מחליף ומוחק את התבנית הקיימת שלי עם כל המאקרואים שבו?
מה פתאום??
ראשית אפשר למזג בנורמל, שנית אפשר לחבר עוד תבניות, לא רק את הנורמל. -
@es0583292679
רגע, אז בעצם כשאתה עובד קשה ליצור התקנה לכל התוספים שלך, לפעמים אתה פשוט יכול ליצור רק חילוץ של תבנית אל תיקיית טאמפלט וזה עובד יופי בלי כל מיני קמפולים, נכון?
אז למה שלא יעשו את אותו דבר גם במאקרו של הערות רציפות?
ושאלה אחרונה, איך אני יוצר את המנגנון הזה שבלחיצה על אלט + 9 וכדו' אני מתקין את התבנית וזה לא מפריע לנורמל וכו', וכן שבלחיצה על אלט + 8 אני מגדיר לו כל מיני דברים וכו'?
אשמח שתחכים אותי. -
@ששמעון כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
@es0583292679 אבל הקובץ שאני עובד עליו יכול לעבוד על כמה מאקרואים שבכמה תבניות?
ברור!