בירור | קוד מאקרו ליישור שני טורים בוורד
-
@רפרם-בר-בר-פפא תודה על המענה זה כותב לי את השגיאה הבאה
אני חושב שמחמת שהשורה התחתונה בקוד שלך חסר משהו אחרי "THEN".
2. האם בבקשה אתה יכול להסביר יותר, מה אתה מתכוון שאני צריך להגדיר במקרו, ומה כוונתך ל"גובה טור 1"
תודה!@אבי-0
1 השגיאה היא חוסר ב סוף אם (End If) כעת תקנתי
`2 יש להוסיף אחרי המאקרו שהביא`` @NykUser שמגדיר הפרש בין טורים ומגדיר גובה טור 1 וגובה טור 2 והוספה שלי מגדירה בסיום המאקרו לעבור לשורה השווה לגובה טור 1 שהיא השורה האחרונה בטור הימני
להלן הקוד המלא אם החלק הראשון שבנוי על הקוד שהביא @NykUser ובתוספת שכתבתיPublic Sub שורה_אחרונה_בטור() 'בודק אם יש שני טורים If Selection.PageSetup.TextColumns.Count <> 2 Then MsgBox ("לא נמצאו 2 טורים"): Exit Sub 'עדכון מסך שקר Application.ScreenUpdating = False Dim WRange As range Dim NumLines, col1, col2, Ignore As Double 'מספר שורות כולל בשני טורים NumLines = ActiveDocument.Bookmarks("\page").range.ComputeStatistics(wdStatisticLines) ActiveDocument.Bookmarks("\page").range.Select Selection.MoveLeft Unit:=wdCharacter, Count:=1 'מגדיר אורך טור 1 For i = 1 To NumLines Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" If col1 > Selection.Information(wdVerticalPositionRelativeToPage) Then Exit For Else col1 = Selection.Information(wdVerticalPositionRelativeToPage) End If Next 'עובר לשורה ראשונה בעמוד Set MyRange = ActiveDocument.Bookmarks("\page").range MyRange.SetRange Start:=MyRange.Start, End:=MyRange.Start MyRange.Select 'רד לשורה אחרונה בטור For i = 1 To NumLines Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" If col1 = Selection.Information(wdVerticalPositionRelativeToPage) Then Exit For ElseIf col1 > Selection.Information(wdVerticalPositionRelativeToPage) Then End If Next End Sub
-
@אבי-0
1 השגיאה היא חוסר ב סוף אם (End If) כעת תקנתי
`2 יש להוסיף אחרי המאקרו שהביא`` @NykUser שמגדיר הפרש בין טורים ומגדיר גובה טור 1 וגובה טור 2 והוספה שלי מגדירה בסיום המאקרו לעבור לשורה השווה לגובה טור 1 שהיא השורה האחרונה בטור הימני
להלן הקוד המלא אם החלק הראשון שבנוי על הקוד שהביא @NykUser ובתוספת שכתבתיPublic Sub שורה_אחרונה_בטור() 'בודק אם יש שני טורים If Selection.PageSetup.TextColumns.Count <> 2 Then MsgBox ("לא נמצאו 2 טורים"): Exit Sub 'עדכון מסך שקר Application.ScreenUpdating = False Dim WRange As range Dim NumLines, col1, col2, Ignore As Double 'מספר שורות כולל בשני טורים NumLines = ActiveDocument.Bookmarks("\page").range.ComputeStatistics(wdStatisticLines) ActiveDocument.Bookmarks("\page").range.Select Selection.MoveLeft Unit:=wdCharacter, Count:=1 'מגדיר אורך טור 1 For i = 1 To NumLines Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" If col1 > Selection.Information(wdVerticalPositionRelativeToPage) Then Exit For Else col1 = Selection.Information(wdVerticalPositionRelativeToPage) End If Next 'עובר לשורה ראשונה בעמוד Set MyRange = ActiveDocument.Bookmarks("\page").range MyRange.SetRange Start:=MyRange.Start, End:=MyRange.Start MyRange.Select 'רד לשורה אחרונה בטור For i = 1 To NumLines Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" If col1 = Selection.Information(wdVerticalPositionRelativeToPage) Then Exit For ElseIf col1 > Selection.Information(wdVerticalPositionRelativeToPage) Then End If Next End Sub
@רפרם-בר-בר-פפא זה עדיין כותב לי את השגיאה הבאה
2. האם זה מתאים למסמך שיש בו פסקאות שהמילה הראשונה היא ב"חלונות" [כמקובל בספרים תורניים] בשיטת המסגרת. -
@רפרם-בר-בר-פפא זה עדיין כותב לי את השגיאה הבאה
2. האם זה מתאים למסמך שיש בו פסקאות שהמילה הראשונה היא ב"חלונות" [כמקובל בספרים תורניים] בשיטת המסגרת.@אבי-0
1 השגיאה כיוון שהכנסת אותה בתוך פקודת מאקרו אאא הקוד שהבאתי הוא פקודה מלאה יש להעתיקו לעורך ולהפעיל מאקרו שורה_אחרונה _בטור מתוך רשימת המאקרו שלך
2 צריך לפעול לא ניסיתי -
@אבי-0
1 השגיאה כיוון שהכנסת אותה בתוך פקודת מאקרו אאא הקוד שהבאתי הוא פקודה מלאה יש להעתיקו לעורך ולהפעיל מאקרו שורה_אחרונה _בטור מתוך רשימת המאקרו שלך
2 צריך לפעול לא ניסיתי@רפרם-בר-בר-פפא עובד מצויין!
ישר כח גדול! -
@רפרם-בר-בר-פפא זה עדיין כותב לי את השגיאה הבאה
2. האם זה מתאים למסמך שיש בו פסקאות שהמילה הראשונה היא ב"חלונות" [כמקובל בספרים תורניים] בשיטת המסגרת.@אבי-0 כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
האם זה מתאים למסמך שיש בו פסקאות שהמילה הראשונה היא ב"חלונות" [כמקובל בספרים תורניים] בשיטת המסגרת.
יש איזשהו באג בוורד שכאשר המילה הראשונה בתוך מסגרת הוא מחשב את השורות כאילו הפיסקה הזאת נמצאת בנפרד, דהיינו כמו שהשורות היו מעוצבות במקרה שזה לא היה במסגרת. ולכן בכל הפקודה דלעיל עלולות לצוץ תקלות. (אמנם לא בהכרח, אבל זה קורה).
-
@אבי-0 כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
האם זה מתאים למסמך שיש בו פסקאות שהמילה הראשונה היא ב"חלונות" [כמקובל בספרים תורניים] בשיטת המסגרת.
יש איזשהו באג בוורד שכאשר המילה הראשונה בתוך מסגרת הוא מחשב את השורות כאילו הפיסקה הזאת נמצאת בנפרד, דהיינו כמו שהשורות היו מעוצבות במקרה שזה לא היה במסגרת. ולכן בכל הפקודה דלעיל עלולות לצוץ תקלות. (אמנם לא בהכרח, אבל זה קורה).
@מאקרו
לא בפקודה שהבאתי שאינה משתמשת בפסקאות רק בפקודה ליישור טורים -
@אבי-0
1 השגיאה היא חוסר ב סוף אם (End If) כעת תקנתי
`2 יש להוסיף אחרי המאקרו שהביא`` @NykUser שמגדיר הפרש בין טורים ומגדיר גובה טור 1 וגובה טור 2 והוספה שלי מגדירה בסיום המאקרו לעבור לשורה השווה לגובה טור 1 שהיא השורה האחרונה בטור הימני
להלן הקוד המלא אם החלק הראשון שבנוי על הקוד שהביא @NykUser ובתוספת שכתבתיPublic Sub שורה_אחרונה_בטור() 'בודק אם יש שני טורים If Selection.PageSetup.TextColumns.Count <> 2 Then MsgBox ("לא נמצאו 2 טורים"): Exit Sub 'עדכון מסך שקר Application.ScreenUpdating = False Dim WRange As range Dim NumLines, col1, col2, Ignore As Double 'מספר שורות כולל בשני טורים NumLines = ActiveDocument.Bookmarks("\page").range.ComputeStatistics(wdStatisticLines) ActiveDocument.Bookmarks("\page").range.Select Selection.MoveLeft Unit:=wdCharacter, Count:=1 'מגדיר אורך טור 1 For i = 1 To NumLines Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" If col1 > Selection.Information(wdVerticalPositionRelativeToPage) Then Exit For Else col1 = Selection.Information(wdVerticalPositionRelativeToPage) End If Next 'עובר לשורה ראשונה בעמוד Set MyRange = ActiveDocument.Bookmarks("\page").range MyRange.SetRange Start:=MyRange.Start, End:=MyRange.Start MyRange.Select 'רד לשורה אחרונה בטור For i = 1 To NumLines Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1, Name:="" If col1 = Selection.Information(wdVerticalPositionRelativeToPage) Then Exit For ElseIf col1 > Selection.Information(wdVerticalPositionRelativeToPage) Then End If Next End Sub
@רפרם-בר-בר-פפא
אני צריך אותך רגע לפרטי, אך אין לך פרטי כרגע, אודה ואשמח מאד אם תתקשר אליי ל: 0583292679 -
@מאקרו
לא בפקודה שהבאתי שאינה משתמשת בפסקאות רק בפקודה ליישור טורים@רפרם-בר-בר-פפא זה לא קשור לפיסקאות אלא לשורות וכאשר אתה משתמש בפקודה זו:
Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1
פעמים שזה לא יעבור למיקום שתכננת, דו"ק ותשכח.
-
@רפרם-בר-בר-פפא זה לא קשור לפיסקאות אלא לשורות וכאשר אתה משתמש בפקודה זו:
Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Count:=1
פעמים שזה לא יעבור למיקום שתכננת, דו"ק ותשכח.
@מאקרו
בנסיון שלי לא נתקל בבעיה לעבור שורה -
@מאקרו
בנסיון שלי לא נתקל בבעיה לעבור שורה -
@מאקרו
לגבי לרדת לשורה אחרונה בטור ולבדוק גובה טור זה לא נפקא מיניה לפי עניות דעתי -
@מאקרו
לגבי לרדת לשורה אחרונה בטור ולבדוק גובה טור זה לא נפקא מיניה לפי עניות דעתי@רפרם-בר-בר-פפא הנפ"מ היא כאשר השורה האחרונה קצרה עם מילה בודדת, שאז השורה יכולה להתפספס כאשר 'וורד' ידלג עליה.
-
מצד שני בתוסף שלך המילה הראשונה בדרך כלל קופצת למעלה או למטה, ואז צריך להתחיל לסדר (זה אני הייתי במייל), משאי"כ בתוסף שלו שכנראה עובד חלק מהבחינה הזו.
אני לא מזמן שאלתי את @es0583292679 האם הוא יכול בתוסף שלו להגדיר שהמילה הראשונה תיצור סגנון לעצמה (כוונתי כשמפעילים את התוסף, והוא מעצב את המילה הראשונה, שהיא תהיה בסגנון) והוא ענה לי שאכן כמה אנשים ביקשו ממנו וכשיהיה לו זמן בעז"ה הוא יטפל בזה.
אולי הגיע הזמן......?@poker כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
האם הוא יכול בתוסף שלו להגדיר שהמילה הראשונה תיצור סגנון לעצמה (כוונתי כשמפעילים את התוסף, והוא מעצב את המילה הראשונה, שהיא תהיה בסגנון)
ברעיון, (לא בדקתי) אתה יכול ליצור סגנון חדש, ואחר כך לעמוד בתוך מסגרת שכבר נעשתה על ידי התוסף, וללחוץ על לחצן ימני על הסגנון, וכך יווצר לך סגנון זה.
כמו כן אתה יכול לבחור את כל הטקסט בעיצוב דומה ולהחיל עליהם את הסגנון שיצרת...
ועיין כאן.
בהצלחה -
@poker כתב בבירור | קוד מאקרו ליישור שני טורים בוורד:
האם הוא יכול בתוסף שלו להגדיר שהמילה הראשונה תיצור סגנון לעצמה (כוונתי כשמפעילים את התוסף, והוא מעצב את המילה הראשונה, שהיא תהיה בסגנון)
ברעיון, (לא בדקתי) אתה יכול ליצור סגנון חדש, ואחר כך לעמוד בתוך מסגרת שכבר נעשתה על ידי התוסף, וללחוץ על לחצן ימני על הסגנון, וכך יווצר לך סגנון זה.
כמו כן אתה יכול לבחור את כל הטקסט בעיצוב דומה ולהחיל עליהם את הסגנון שיצרת...
ועיין כאן.
בהצלחהברעיון, (לא בדקתי) אתה יכול ליצור סגנון חדש, ואחר כך לעמוד בתוך מסגרת שכבר נעשתה על ידי התוסף, וללחוץ על לחצן ימני על הסגנון, וכך יווצר לך סגנון זה.
כמו כן אתה יכול לבחור את כל הטקסט בעיצוב דומה ולהחיל עליהם את הסגנון שיצרת...ברעיון אתה צודק, וכך בד"כ אני עושה, אך רציתי לחסוך לי את הזמן הזה, הגם שבספרים ארוכים הוורד נתקע לי קצת...
-
-
ה האדם החושב התייחס לנושא זה ב
-
-
ש ששמעון התייחס לנושא זה ב
-
-