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

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

קוד:
Dim i As Integer
Dim NCount As Integer
NCount = ActiveDocument.Content.Paragraphs.Count
בקוד זה הגדרתי משתנה, שיספור את מספר הפסקאות במסמך.
אני מעוניין במשתנה, שיספור במסמך מילה מסוימת. (למשל: "אברהם").
 
אם לא תמצא פתרון טוב יותר, אולי תחיל על כל הקטעים המכילים את "אברהם" עיצוב מסוים, או סגנון מסוים, וכך אולי תוכל לספור את הקטעים בעלי העיצוב או הסגנון המסוים?
 
אם לא תמצא פתרון טוב יותר, אולי תחיל על כל הקטעים המכילים את "אברהם" עיצוב מסוים, או סגנון מסוים, וכך אולי תוכל לספור את הקטעים בעלי העיצוב או הסגנון המסוים?

אפשר להגדיר משתנה שיספור את הקטעים במסמך בעלי עיצוב מסוים?
 
לא הבנתי לגמרי מה אתה מנסה לעשות אבל הקוד הבא יחזיר לך במשתנה Counter את מספר המופעים של אברהם במסמך
קוד:
Sub Word_Count()
i = 1
Do While InStr(i, ActiveDocument.Range, "אברהם") > 0
i = InStr(i, ActiveDocument.Range, "אברהם") + 5
Counter = Counter + 1
Loop
End Sub
 
שאלה נוספת:

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

כיצד אני כותב זאת בקוד?

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

תודה רבה!
 
אפשר יותר שיחתי.
כל קוד חיפוש, אחר שמגדירים בו את מה שרוצים לחפש, צריך לחתום:
קוד:
    Selection.Find.Execute
לחיפוש

קוד:
Selection.Find.Execute Replace:=wdReplaceAll
להחלפת הכל



כיצד צריך לחתום לפקודה "חפש ב"?

חן חן!
 
אני לא יודע איך אפשר לעשות את הפעולה הזו, אבל אפשר להשתמש באלתור הזה:

קוד:
Sub multiple_selection()
Do While Selection.Find.Execute("אברהם", , , , , , , wdFindStop) = True
Selection.Range.Editors.Add wdEditorEveryone
Loop
ActiveDocument.SelectAllEditableRanges wdEditorEveryone
ActiveDocument.DeleteAllEditableRanges wdEditorEveryone
 
לא הבנתי לגמרי מה אתה מנסה לעשות אבל הקוד הבא יחזיר לך במשתנה Counter את מספר המופעים של אברהם במסמך

קוד:
Sub Word_Count()
i = 1
[LEFT]Do While InStr(i, ActiveDocument.Range, "אברהם") > 0
i = InStr(i, ActiveDocument.Range, "אברהם") + 5[/LEFT]
Counter = Counter + 1
Loop
End Sub

אפשר בבקשה הסבר מה הקוד הזה עושה בדיוק?
(קצת הסתבך לי המאקרו, והבנת הקוד הזה עלולה לפתור לי את הבעיה).

תודה רבה!
 
אפשר בבקשה הסבר מה הקוד הזה עושה בדיוק?
(קצת הסתבך לי המאקרו, והבנת הקוד הזה עלולה לפתור לי את הבעיה).

תודה רבה!

הפונקציה InStr מחפשת מחרוזת בתוך מחרוזת ומחזירה את המיקום של תת המחרוזת בתוך
המחרוזת הראשית (ערך מספרי), אם לא נמצא היא מחזירה 0.

כאשר תת המחרוזת מופיעה יותר מפעם אחת במחרוזת הראשית הפונציה תחזיר את המיקום של המופע הראשון.

בנוסף הפונקציה מקבלת (אופציונלי) גם את המיקום בתוך המחרוזת הראשית ממנו תתחיל לחפש.


מה שעשיתי הוא לולאה שמחפשת את המחרוזת הרצויה כל עוד הפונקציה עצמה מחזירה ערך גדול מ-0. בנוסף בכל פעם שיניתי את המיקום ממנו תתחיל הפונקציה לעבור על המחרוזת מהמקום שבו נמצא בפעם שעברה + 5 (שזה מספר התווים של אברהם – למרום שהיה מספיק +1 אבל במקרים מסוימים יהיה הבדל לכן העדפתי +5).

כך יוצא שהלולאה תרוץ כמספר המופעים של תת המחרוזת הרצויה. מכאן הדרך קצרה לשים משתנה שיספור את מספר הפעמים שהלולאה רצה ויקרא שמו: Counter

נ"ב: מסתבר שיותר קשה להסביר מאשר לכתוב את הקוד..
 
תודה רבה!



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

פרוגבוט

תוכן שיווקי
פרסומת

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

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


תהילים פרק כה

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