עזרה בחיפוש והחלפה בוורד

shirsh

משתמש צעיר
עיצוב גרפי
עימוד ספרים
עריכה תורנית
יש לי קובץ שהמבנה שלו הוא כך (לדוגמא)

ברכות
דף ב
עמוד א
תוכן
דף ב
עמוד ב
תוכן


התוכן מחולק לכותרות בצורה נפלאה, כלומר "ברכות" כותרת 1, דפים כותרת 2, ועמודים כותרת 3.
אני רוצה לוותר על הכפילות במספר הדף, כלומר שיהיה במבנה כזה:
ברכות
דף ב
עמוד א
תוכן
עמוד ב
תוכן


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

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

מדובר בקובץ גדול מאוד, אז עבודה ידנית לא באה בחשבון.
תודה רבה!
 

shirsh

משתמש צעיר
עיצוב גרפי
עימוד ספרים
עריכה תורנית
ב"ה הצלחתי, מצו"ב לטובת הציבור
מה שעשיתי זה לחפש כותרת 2 בשם "עמוד א"
לחפש את כותרת מספר 1 שאחריה
לשתול בתוכה קוד
כפול 500 פעמים.

לאחר מכן יש להחליף את הקוד הסמוך ל"עמוד א" בקוד אחר.
הדף שסמוך לקוד הראשון - מיותר.

אם למישהו יש שיטה פשוטה יותר נשמח לשמוע

מצו"ב מאקרו:
קוד:
   For i = 0 To 500
    Selection.Find.ClearFormatting
    Selection.Find.Style = ActiveDocument.Styles("כותרת 4")
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "א"
        .Replacement.Text = "^&^c"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.MoveRight Unit:=wdCharacter, Count:=1
    Selection.Find.ClearFormatting
    Selection.Find.Style = ActiveDocument.Styles("כותרת 3")
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = ""
        .Replacement.Text = "^&^c"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.MoveLeft Unit:=wdCharacter, Count:=1
    Selection.TypeText Text:="$$$"
    Next
End Sub
 
נערך לאחרונה ב:

Rרחמים

משתמש סופר מקצוען
עיצוב גרפי
איור וציור מקצועי
מוזיקה ונגינה
עריכה תורנית
D I G I T A L
עימוד ספרים
ב"ה הצלחתי, מצו"ב לטובת הציבור
מה שעשיתי זה לחפש כותרת 2 בשם "עמוד א"
לחפש את כותרת מספר 1 שאחריה
לשתול בתוכה קוד
כפול 500 פעמים.

לאחר מכן יש להחליף את הקוד הסמוך ל"עמוד א" בקוד אחר.
הדף שסמוך לקוד הראשון - מיותר.

אם למישהו יש שיטה פשוטה יותר נשמח לשמוע

מצו"ב מאקרו:
קוד:
   For i = 0 To 500
    Selection.Find.ClearFormatting
    Selection.Find.Style = ActiveDocument.Styles("כותרת 4")
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "א"
        .Replacement.Text = "^&^c"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.MoveRight Unit:=wdCharacter, Count:=1
    Selection.Find.ClearFormatting
    Selection.Find.Style = ActiveDocument.Styles("כותרת 3")
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = ""
        .Replacement.Text = "^&^c"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchKashida = False
        .MatchDiacritics = False
        .MatchAlefHamza = False
        .MatchControl = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.MoveLeft Unit:=wdCharacter, Count:=1
    Selection.TypeText Text:="$$$"
    Next
End Sub
האלגוריתם שלך יביא לשגיאה בדף שיש לו רק עמוד א' בלי עמוד ב'
אם כבר, צריך לחפש את' כותרת 2' עם טקסט 'עמוד ב',
ואז למחוק את הפיסקה שקודם, אם היא אכן 'כותרת 1', ובתנאי שהטקסט שלה זהה לטקסט של 'כותרת 1' שלפני זה.
 

shirsh

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

להמחשה:

דף ב
עמוד ב
תוכן

דף ג
עמוד א
תוכן

דף ג
עמוד ב
תוכן

דף ד
עמוד א
תוכן

דף ה
עמוד א
תוכן

דף ה
עמוד ב
תוכן

בשלב א אנחנו שותלים קוד בתוך דף שלאחר עמוד א:
דף ב
עמוד ב
תוכן

דף ג
עמוד א
תוכן

דף ג@@@
עמוד ב
תוכן

דף ד
עמוד א
תוכן

דף ה@@@
עמוד א
תוכן

דף ה@@@
עמוד ב
תוכן

שלב ב אנחנו משנים את הקוד הסמוך לעמוד א לקוד אחר:
דף ב
עמוד ב
תוכן

דף ג
עמוד א
תוכן

דף ג@@@
עמוד ב
תוכן

דף ד
עמוד א
תוכן

דף ה###
עמוד א
תוכן

דף ה@@@
עמוד ב
תוכן

שלב ג - נמחק את הדפים עם הקוד הראשון בלבד:
דף ב
עמוד ב
תוכן

דף ג
עמוד א
תוכן

דף ג@@@
עמוד ב
תוכן

דף ד
עמוד א
תוכן

דף ה###
עמוד א
תוכן

דף ה@@@
עמוד ב
תוכן

לסיום נמחק את הקוד השני מהקובץ ושלום על ישראל.

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

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

הפרק היומי

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


תהילים פרק קיט ב'

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

לוח מודעות

למעלה