בירור | קוד מאקרו למילה שחלקה מודגשת וחלקה לא
-
אני צריך קוד מאקרו שהפעלה שלו מדגישה את הטקסט הנבחר במסמך, וגם זה יוסיף גרשיים בשני צידי הטקסט, אך שהם לא יהיו מודגשים.
למשל אם בחרתי את המילה בראשית בוורד, המאקרו יהפוך לי את זה ל: 'בראשית' כשמתווספים מקפים, המילה מודגשת והמקפים לא.
ניסתי להעזר בבינה כשרה במייל והיא ממש לא הצליחה, אני מוסיף בספוילר את אחד מהנסיונות שלה.
הבעיה שלה היתה שתמיד או שהכל היה מודגש או שהכל לא היה מודגש.
תודה רבה לכל העוזרים והמסייעים!אני מצטער על הטעות הקודמת, כנראה שהייתי קצת מטושטש. בסייעתא דשמיא, הפעם
הקוד יהיה יותר מדויק ויעשה בדיוק מה שאתה צריך:Sub הדגש_והוסף_מקפים_משופר() Dim SelectionRange As Range Set SelectionRange = Selection.Range ' הדגש את הטקסט הנבחר (בכל מקרה) SelectionRange.Font.Bold = True ' הוסף מקף לא מודגש בתחילת הטקסט SelectionRange.InsertBefore "'" Selection.MoveLeft Unit:=wdCharacter, Count:=1 ' חזור תו אחד אחורה With Selection.Range .End = SelectionRange.Start .Font.Bold = False ' וודא שהמקף לא מודגש End With SelectionRange.MoveEnd Unit:=wdCharacter, Count:=1 ' חזור לטקסט המקורי ' הוסף מקף לא מודגש בסוף הטקסט SelectionRange.InsertAfter "'" Selection.MoveRight Unit:=wdCharacter, Count:=1 ' עבור תו אחד קדימה With Selection.Range .Start = SelectionRange.End .Font.Bold = False ' וודא שהמקף לא מודגש End With Selection.MoveLeft Unit:=wdCharacter, Count:=1 ' חזור לטקסט המקורי End Subמה השתנה?
- הקוד עוצב מחדש כדי להבטיח שהטקסט תמיד יהיה מודגש, בלי קשר למצבו הקודם.
- המקפים תמיד יהיו לא מודגשים, גם אם הטקסט המקורי היה מודגש.
הוראות שימוש:
- פתח את וורד.
- לחץ על "Alt + F11" כדי לפתוח את עורך ה-VBA.
- בתפריט, בחר "Insert" > "Module".
- העתק את הקוד למודול החדש.
- סגור את עורך ה-VBA.
- בחר את המילים שברצונך להדגיש ולהוסיף מקפים.
- לחץ על "Alt + F8", בחר את המאקרו "הדגש_והוסף_מקפים_משופר" ולחץ על "Run".
אני מקווה שהפעם זה יעבוד כמו שצריך. אם יש לך שאלות נוספות, אני כאן כדי לעזור!
-
אני צריך קוד מאקרו שהפעלה שלו מדגישה את הטקסט הנבחר במסמך, וגם זה יוסיף גרשיים בשני צידי הטקסט, אך שהם לא יהיו מודגשים.
למשל אם בחרתי את המילה בראשית בוורד, המאקרו יהפוך לי את זה ל: 'בראשית' כשמתווספים מקפים, המילה מודגשת והמקפים לא.
ניסתי להעזר בבינה כשרה במייל והיא ממש לא הצליחה, אני מוסיף בספוילר את אחד מהנסיונות שלה.
הבעיה שלה היתה שתמיד או שהכל היה מודגש או שהכל לא היה מודגש.
תודה רבה לכל העוזרים והמסייעים!אני מצטער על הטעות הקודמת, כנראה שהייתי קצת מטושטש. בסייעתא דשמיא, הפעם
הקוד יהיה יותר מדויק ויעשה בדיוק מה שאתה צריך:Sub הדגש_והוסף_מקפים_משופר() Dim SelectionRange As Range Set SelectionRange = Selection.Range ' הדגש את הטקסט הנבחר (בכל מקרה) SelectionRange.Font.Bold = True ' הוסף מקף לא מודגש בתחילת הטקסט SelectionRange.InsertBefore "'" Selection.MoveLeft Unit:=wdCharacter, Count:=1 ' חזור תו אחד אחורה With Selection.Range .End = SelectionRange.Start .Font.Bold = False ' וודא שהמקף לא מודגש End With SelectionRange.MoveEnd Unit:=wdCharacter, Count:=1 ' חזור לטקסט המקורי ' הוסף מקף לא מודגש בסוף הטקסט SelectionRange.InsertAfter "'" Selection.MoveRight Unit:=wdCharacter, Count:=1 ' עבור תו אחד קדימה With Selection.Range .Start = SelectionRange.End .Font.Bold = False ' וודא שהמקף לא מודגש End With Selection.MoveLeft Unit:=wdCharacter, Count:=1 ' חזור לטקסט המקורי End Subמה השתנה?
- הקוד עוצב מחדש כדי להבטיח שהטקסט תמיד יהיה מודגש, בלי קשר למצבו הקודם.
- המקפים תמיד יהיו לא מודגשים, גם אם הטקסט המקורי היה מודגש.
הוראות שימוש:
- פתח את וורד.
- לחץ על "Alt + F11" כדי לפתוח את עורך ה-VBA.
- בתפריט, בחר "Insert" > "Module".
- העתק את הקוד למודול החדש.
- סגור את עורך ה-VBA.
- בחר את המילים שברצונך להדגיש ולהוסיף מקפים.
- לחץ על "Alt + F8", בחר את המאקרו "הדגש_והוסף_מקפים_משופר" ולחץ על "Run".
אני מקווה שהפעם זה יעבוד כמו שצריך. אם יש לך שאלות נוספות, אני כאן כדי לעזור!
@מענין-לשמוע זה עובד
Sub HighlightAndAddQuotesHebrewBi() Dim selectedRange As Range ' הגדרת הטווח שנבחר Set selectedRange = Selection.Range ' בדיקה שנבחר טקסט If Selection.Type = wdSelectionIP Then Exit Sub ' הדגשת הטקסט (גם רגיל וגם לשפות RTL) selectedRange.Font.Bold = True selectedRange.Font.BoldBi = True ' הוספת גרש בסוף וביטול הדגשה כפולה selectedRange.InsertAfter "'" With selectedRange.Characters.Last.Font .Bold = False .BoldBi = False End With ' הוספת גרש בהתחלה וביטול הדגשה כפולה selectedRange.InsertBefore "'" With selectedRange.Characters.First.Font .Bold = False .BoldBi = False End With ' העברת הסמן לסוף הקטע וביטול הדגשה להמשך כתיבה Selection.Collapse wdCollapseEnd Selection.Font.Bold = False Selection.Font.BoldBi = False End Sub -
@מענין-לשמוע זה עובד
Sub HighlightAndAddQuotesHebrewBi() Dim selectedRange As Range ' הגדרת הטווח שנבחר Set selectedRange = Selection.Range ' בדיקה שנבחר טקסט If Selection.Type = wdSelectionIP Then Exit Sub ' הדגשת הטקסט (גם רגיל וגם לשפות RTL) selectedRange.Font.Bold = True selectedRange.Font.BoldBi = True ' הוספת גרש בסוף וביטול הדגשה כפולה selectedRange.InsertAfter "'" With selectedRange.Characters.Last.Font .Bold = False .BoldBi = False End With ' הוספת גרש בהתחלה וביטול הדגשה כפולה selectedRange.InsertBefore "'" With selectedRange.Characters.First.Font .Bold = False .BoldBi = False End With ' העברת הסמן לסוף הקטע וביטול הדגשה להמשך כתיבה Selection.Collapse wdCollapseEnd Selection.Font.Bold = False Selection.Font.BoldBi = False End Sub@מניין
ממש מצוין, בדיוק מה שרצתי!!!
ישר כח עצום!