בירור | מאקרו להקטנת סוגריים
-
@u88 כתב בבירור | מאקרו להקטנת סוגריים:
@ע-ה-דכו-ע לא לכתוב את הקוד של ההחלפה?
ב"חפש את" תכתוב את הקוד של ההחלפה, וב"החלף ב" תכתוב חוץ מהעיצוב גם את הקוד "^&" שהמשמעות שלו היא "הטקסט שבתיבת "חפש את"
@ע-ה-דכו-ע אשמח שתתקן את מה שעשיתי מכיון שהוא לא עשה כלום הנה הקוד שנעשה בהקלטת מאקרו
' ' Macro2 Macro ' ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "\(*\)" .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 Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .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 End Sub
-
@ע-ה-דכו-ע אשמח שתתקן את מה שעשיתי מכיון שהוא לא עשה כלום הנה הקוד שנעשה בהקלטת מאקרו
' ' Macro2 Macro ' ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "\(*\)" .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 Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .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 End Sub
-
@u88
בהקלטת מאקרו מתפספס הגודל והעיצוב בדרך כלל, צריך לכתוב לבד:.Font.Size = 10
כאשר הספרה מציינת את הגודל של הפונט.
-
משהו בסגנון הזה:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו, אולי @pcinfogmach יוכל לתת את הפקודה להפעלת תווים כללים במאקרו... או שיש לו דרך יותר טובה.
-
משהו בסגנון הזה:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו, אולי @pcinfogmach יוכל לתת את הפקודה להפעלת תווים כללים במאקרו... או שיש לו דרך יותר טובה.
@דאנציג כתב בבירור | מאקרו להקטנת סוגריים:
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו, אולי @pcinfogmach יוכל לתת את הפקודה להפעלת תווים כללים במאקרו... או שיש לו דרך יותר טובה.
הפקודה היא
.MatchWildcards = True
כלומר הקוד שהבאת צריך להיות כך:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
ולשנות את המספר בשורה 10 לגודל שרוצים.
-
משהו בסגנון הזה:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו, אולי @pcinfogmach יוכל לתת את הפקודה להפעלת תווים כללים במאקרו... או שיש לו דרך יותר טובה.
@דאנציג כתב בבירור | מאקרו להקטנת סוגריים:
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו,
יהיה לך הרבה תועלת במקרים כאלו להתשמש בהקלטת מאקרו
-
@דאנציג כתב בבירור | מאקרו להקטנת סוגריים:
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו, אולי @pcinfogmach יוכל לתת את הפקודה להפעלת תווים כללים במאקרו... או שיש לו דרך יותר טובה.
הפקודה היא
.MatchWildcards = True
כלומר הקוד שהבאת צריך להיות כך:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
ולשנות את המספר בשורה 10 לגודל שרוצים.
-
@דאנציג כתב בבירור | מאקרו להקטנת סוגריים:
אבל צריך שיהיה מוגדר חיפוש בתווים כללים (חיפוש אחרון בחיפוש), ואני לא יודע איך עושים את זה במאקרו,
יהיה לך הרבה תועלת במקרים כאלו להתשמש בהקלטת מאקרו
-
@ע-ה-דכו-ע @דאנציג רק אשמח איך אני עושה החלף הכל ולא אחד אחד
בכו"ז תודה רבה ועצומה לכל הטורחים במלאכה@u88 כתב בבירור | מאקרו להקטנת סוגריים:
@ע-ה-דכו-ע @דאנציג רק אשמח איך אני עושה החלף הכל ולא אחד אחד
בכו"ז תודה רבה ועצומה לכל הטורחים במלאכהתנסה את זה
Sub החלפת_גודל_גופן() Dim rng As Range Set rng = ActiveDocument.Content With rng.Find .ClearFormatting .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .MatchWildcards = True End With Do While rng.Find.Execute rng.Font.SizeBi = 10 rng.Collapse wdCollapseEnd Loop b end sub
-
@ע-ה-דכו-ע @דאנציג רק אשמח איך אני עושה החלף הכל ולא אחד אחד
בכו"ז תודה רבה ועצומה לכל הטורחים במלאכה@u88 כתב בבירור | מאקרו להקטנת סוגריים:
רק אשמח איך אני עושה החלף הכל ולא אחד אחד
ניסית?
וזה החליף לך רק אחד???@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
תנסה את זה
למה?
@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
Selection.Find.Execute Replace:=wdReplaceAll
מחליף את כל המופעים!!!
-
@u88 כתב בבירור | מאקרו להקטנת סוגריים:
רק אשמח איך אני עושה החלף הכל ולא אחד אחד
ניסית?
וזה החליף לך רק אחד???@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
תנסה את זה
למה?
@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
Selection.Find.Execute Replace:=wdReplaceAll
מחליף את כל המופעים!!!
@דאנציג כתב בבירור | מאקרו להקטנת סוגריים:
@u88 כתב בבירור | מאקרו להקטנת סוגריים:
רק אשמח איך אני עושה החלף הכל ולא אחד אחד
ניסית?
וזה החליף לך רק אחד???@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
תנסה את זה
למה?
@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
Selection.Find.Execute Replace:=wdReplaceAll
מחליף את כל המופעים!!!
אני לא בדקתי את זה, כיון שהוא אמר שלא עבד לו אז עשיתי לו לולאה.
אגב הקוד הקודם היה רק לבחירה הנוכחית ולא לכל המסמך, אולי בזה היתה הבעיה -
@דאנציג כתב בבירור | מאקרו להקטנת סוגריים:
@u88 כתב בבירור | מאקרו להקטנת סוגריים:
רק אשמח איך אני עושה החלף הכל ולא אחד אחד
ניסית?
וזה החליף לך רק אחד???@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
תנסה את זה
למה?
@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
Selection.Find.Execute Replace:=wdReplaceAll
מחליף את כל המופעים!!!
אני לא בדקתי את זה, כיון שהוא אמר שלא עבד לו אז עשיתי לו לולאה.
אגב הקוד הקודם היה רק לבחירה הנוכחית ולא לכל המסמך, אולי בזה היתה הבעיה@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
אגב הקוד הקודם היה רק לבחירה הנוכחית ולא לכל המסמך, אולי בזה היתה הבעיה
לא יודע, אני לא בחרתי כלום, והפעלתי את הקוד הקודם שהבאת, והוא החליף את כל המופעים במסמך.
-
@u88 כתב בבירור | מאקרו להקטנת סוגריים:
רק אשמח איך אני עושה החלף הכל ולא אחד אחד
ניסית?
וזה החליף לך רק אחד???@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
תנסה את זה
למה?
@ע-ה-דכו-ע כתב בבירור | מאקרו להקטנת סוגריים:
Selection.Find.Execute Replace:=wdReplaceAll
מחליף את כל המופעים!!!
-
@u88
מוזר
@pcinfogmach איך יכול להיות שהקוד הזה:Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
אצלי מחליף את כל המופעיל, ואילו אצל @u88 רק אחד?
-
@u88
מוזר
@pcinfogmach איך יכול להיות שהקוד הזה:Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
אצלי מחליף את כל המופעיל, ואילו אצל @u88 רק אחד?
-
@u88
מוזר
@pcinfogmach איך יכול להיות שהקוד הזה:Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = "12" Selection.Find.Execute Replace:=wdReplaceAll End Sub
אצלי מחליף את כל המופעיל, ואילו אצל @u88 רק אחד?
הניסוח של gpt אני רק אמרתי לו מה להגיד
ב־VBA של Word, כאשר אתה מבצע Selection.Find.Execute Replace:=wdReplaceAll, יש לו התנהגות שונה אם לא הגדרת את פרמטר Wrap.
ברירת המחדל של Wrap היא wdFindStop, מה שאומר שהחיפוש יפסיק בסוף המסמך ולא ימשיך להתחלה. לכן, ייתכן שאצלך זה עובד כי אתה מתחיל מראש המסמך, ואצל @u88 לא — כי הוא לא ממוקם בתחילת המסמך.
כדי לוודא שהחיפוש מתבצע על כל המסמך, הוסף את השורה:
.Selection.Find.Wrap = wdFindContinue
הקוד המלא שלך עם התיקון יהיה כך:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .Wrap = wdFindContinue .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = 12 Selection.Find.Execute Replace:=wdReplaceAll End Sub
שים לב גם ש־.SizeBi צריך לקבל מספר, לא מחרוזת — כלומר, בלי גרשיים סביב 12.
-
הניסוח של gpt אני רק אמרתי לו מה להגיד
ב־VBA של Word, כאשר אתה מבצע Selection.Find.Execute Replace:=wdReplaceAll, יש לו התנהגות שונה אם לא הגדרת את פרמטר Wrap.
ברירת המחדל של Wrap היא wdFindStop, מה שאומר שהחיפוש יפסיק בסוף המסמך ולא ימשיך להתחלה. לכן, ייתכן שאצלך זה עובד כי אתה מתחיל מראש המסמך, ואצל @u88 לא — כי הוא לא ממוקם בתחילת המסמך.
כדי לוודא שהחיפוש מתבצע על כל המסמך, הוסף את השורה:
.Selection.Find.Wrap = wdFindContinue
הקוד המלא שלך עם התיקון יהיה כך:
Sub החלפת_גודל_גופן() With Selection.Find .Text = "\(*\)" .Replacement.Text = "^&" .Forward = True .Wrap = wdFindContinue .MatchWildcards = True End With Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Font.SizeBi = 12 Selection.Find.Execute Replace:=wdReplaceAll End Sub
שים לב גם ש־.SizeBi צריך לקבל מספר, לא מחרוזת — כלומר, בלי גרשיים סביב 12.
@pcinfogmach אלוף!!!
מה היינו עושים בלעדך תודה רבה
אם אפשר כבר עוד שאלה אם יש אפשרות להוסיף לזה החלפה שתעשה יחד גם סוגריים מרובעות ומסולסלות וסוגריים בתוך סוגריים באותה פעולה במקום להפעיל כמה פקודות אחת אחרי השניה.תודה רבה לכל הטורחים והמסייעים!!!!
-
@pcinfogmach אלוף!!!
מה היינו עושים בלעדך תודה רבה
אם אפשר כבר עוד שאלה אם יש אפשרות להוסיף לזה החלפה שתעשה יחד גם סוגריים מרובעות ומסולסלות וסוגריים בתוך סוגריים באותה פעולה במקום להפעיל כמה פקודות אחת אחרי השניה.תודה רבה לכל הטורחים והמסייעים!!!!
@u88 אאל"ט זה אמור לעבוד כך:
במקום(\[*\])
תכתוב -
(\[\{\(*\]\}\))
הסבר:
\
תו שלילה (בכדי שיתייחס לסוגריים לסוגריים ולא כפקודה אחרת, ואז כל סוגי הסוגריים הפותחים, ואז * - שמסמן מספר תוים בלתי מוגבל בחיפוש והחלפה בתווים כלליים, ואז \ עם כל הסוגריים הסוגרים.
- לסוגריים מתוך סוגריים זה לא יעזור, לא יודע איך עושים, אבל יש לזה כבר כמה פוסטים בפורום, תחפש.
-
@pcinfogmach אלוף!!!
מה היינו עושים בלעדך תודה רבה
אם אפשר כבר עוד שאלה אם יש אפשרות להוסיף לזה החלפה שתעשה יחד גם סוגריים מרובעות ומסולסלות וסוגריים בתוך סוגריים באותה פעולה במקום להפעיל כמה פקודות אחת אחרי השניה.תודה רבה לכל הטורחים והמסייעים!!!!
@u88
אתה צריך להתמש עם תווים כלליים ואז פשוט תשתמש עם קבוצות
קבוצות בחיפוש והחלפה בוורד נותן לך להגדיר מספר תווים חילופיים בו זמנית
כך שאם תכתוב [שנב] וורד יחפש או ש' או נ' או ב'במקרה שלך פשוט תכלול את כל סוגי הסוגריים הפותחים והסוגרים.
שים לב בגלל שסוגריים משמשים עבור תווים כלליים צריך להזין לפניהם "\
" (תו בריחה)
כדי שוורד יזהה שאתה רוצה לחפש את התיו עצמו.כמו"כ כמו שהזכירו כבר יש פה את הבעיה של סוגריים בתוך סוגריים
למשל אם תחפש במשפט
"אבל אני לא יודע איך לחפש (סוגריים (בתוך) וורד)" אזי וורד ימצא את "(סוגריים (בתוך)" כלומר ייקטע לך הסוגריים החיצוניים באמצע.
הפתרון לזה הוא רק בשני שלבים
שלב א' נחפש רק את הסוגריים הפנימיים על ידי הגדרה שלילה\([!(]@)\)
סוגריים מרובעות בחיפוש עם תווים כלליים בורד בתוספת סימן קריאה משמעותו הגדרה בשלילה
שלב ב'
נחפש רק את הסוגריים החיצוניות על ידי שנכלול את הסוגריים הפנימיות בתוך המחרוזת
\(*\(*\)*\)
-
@u88
אתה צריך להתמש עם תווים כלליים ואז פשוט תשתמש עם קבוצות
קבוצות בחיפוש והחלפה בוורד נותן לך להגדיר מספר תווים חילופיים בו זמנית
כך שאם תכתוב [שנב] וורד יחפש או ש' או נ' או ב'במקרה שלך פשוט תכלול את כל סוגי הסוגריים הפותחים והסוגרים.
שים לב בגלל שסוגריים משמשים עבור תווים כלליים צריך להזין לפניהם "\
" (תו בריחה)
כדי שוורד יזהה שאתה רוצה לחפש את התיו עצמו.כמו"כ כמו שהזכירו כבר יש פה את הבעיה של סוגריים בתוך סוגריים
למשל אם תחפש במשפט
"אבל אני לא יודע איך לחפש (סוגריים (בתוך) וורד)" אזי וורד ימצא את "(סוגריים (בתוך)" כלומר ייקטע לך הסוגריים החיצוניים באמצע.
הפתרון לזה הוא רק בשני שלבים
שלב א' נחפש רק את הסוגריים הפנימיים על ידי הגדרה שלילה\([!(]@)\)
סוגריים מרובעות בחיפוש עם תווים כלליים בורד בתוספת סימן קריאה משמעותו הגדרה בשלילה
שלב ב'
נחפש רק את הסוגריים החיצוניות על ידי שנכלול את הסוגריים הפנימיות בתוך המחרוזת
\(*\(*\)*\)
@pcinfogmach שאלתי ובקשתי אם מצאתי חן רציתי לשאול איך נעשה את זה בפקודת מאקרו
תודה רבה על כל הטירחה של כל המסייעים