מאקרו חיפוש (החלפה לקטע הנבחר בלבד)

אלחנן אריאל

משתמש צעיר
עימוד ספרים
שלום רב!

קוד:
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "@77"
        .Replacement.Text = "^<לא ניתן לפרסם מיילים באופן פומבי>"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll

כיצד אני מבקש ממנו, שיעשה לי את הפעולה הזו רק על הקטע הנבחר ולא על כל המסמך?

תודה רבה!
 

tkh

משתמש מקצוען
עימוד ספרים
עריכה תורנית
תכניס בתוך המאקרו גם את בחירת הקטע (קטע שלם בוחרים כשעומדים בתחילת הקטע ע"י SHIFT+CTRL+חץ למטה).
 

אלחנן אריאל

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

tkh

משתמש מקצוען
עימוד ספרים
עריכה תורנית
האם יש מאפיינים מסויימים לתחילת וסוף הקטע שאתה רוצה לבחור?
אם כן, אפשר לעשות בתוך המאקרו חיפוש על ההתחלה, F8, חיפוש על הסוף.
אם לא, לכאו' אין לך ברירה, רק לבחור ידנית, ואז להפעיל המאקרו. (אפשר להקצות למאקרו מקש קיצור).
 

צורת הדף

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

קוד:
Set p = ActiveDocument.Range(start:=Selection.Paragraphs(1).Range.start, End:=Selection.Paragraphs(Selection.Paragraphs.Count).Range.End)
    With p.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = "@77"
        .Replacement.Text = "^<לא ניתן לפרסם מיילים באופן פומבי>"
        .Forward = True
        .Wrap = wdFindStop
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
 

אלחנן אריאל

משתמש צעיר
עימוד ספרים
@tkh אני רואה שלא הובנתי.
איני מעוניין שהמאקרו יבחר עבורי את הקטעים, אין הוא נביא, ואינו יודע רצוני.
אני בוחר בעצמי, בחסד הבורא בתנועות ידי ובהקשה על העכבר ובגרירתו, את הקטע המבוקש.
אני רק רוצה, שכשאני מריץ את המאקרו של החיפוש וההחלפה, הוא יבצע אותם רק על הקטע שבחרתי.
 

moishy

משתמש סופר מקצוען
מנוי פרימיום
קוד:
    Dim Rng As Range

    Set Rng = Selection.Range
    With Rng.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = "@77"
        .Replacement.Text = "^<לא ניתן לפרסם מיילים באופן פומבי>"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
 

אולי מעניין אותך גם...

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק קכג

א שִׁיר הַמַּעֲלוֹת אֵלֶיךָ נָשָׂאתִי אֶת עֵינַי הַיֹּשְׁבִי בַּשָּׁמָיִם:ב הִנֵּה כְעֵינֵי עֲבָדִים אֶל יַד אֲדוֹנֵיהֶם כְּעֵינֵי שִׁפְחָה אֶל יַד גְּבִרְתָּהּ כֵּן עֵינֵינוּ אֶל יְהוָה אֱלֹהֵינוּ עַד שֶׁיְּחָנֵּנוּ:ג חָנֵּנוּ יְהוָה חָנֵּנוּ כִּי רַב שָׂבַעְנוּ בוּז:ד רַבַּת שָׂבְעָה לָּהּ נַפְשֵׁנוּ הַלַּעַג הַשַּׁאֲנַנִּים הַבּוּז לִגְאֵיוֹנִים:
נקרא  4  פעמים

לוח מודעות

למעלה