בקשה | פקודות מקרו בוורד.
-
@yossiz ממש תודה רבה רבה !!!
ואיך אפשר להגדיר בהחלפה שהוא יחפש או בראשית (כנ"ל) או שמות גם באופן הנ"ל שזה בתוך סוגריים
זה שאני צריך בעצם מקרו מאחר שאני צריך את זה לכמויות של טקסטים ולא על מילה מסוים אלא על רשימה של מילים בראשית /שמות/ ויקרא /וכן על עוד ספרים...בכל טקסט ...
דהיינו האם יש פיתרון בהחלף לכתוב שיחליף רק את הסוגריים בלי שאצטרך להעתיק את המילה בראשית?
עכ"פ תודה רבה! -
@הללוהו אמר בבקשה | פקודות מקרו בוורד.:
דהיינו האם יש פיתרון בהחלף לכתוב שיחליף רק את הסוגריים בלי שאצטרך להעתיק את המילה בראשית?
מה זה יעזור לך אם בחיפוש עדיין תצטרך לשים את המילה בראשית שמות וכו'.
אתה צריך להשתמש במאקרו עם לולאה שיעבור על רשימת מילים, ויחליף אותם, במקרה כזה קל לשים פעמיים את המשתנה שכרגע בטיפול. -
@www @אוריי אני צריך שאוכל להכניס הרבה סוגי מילים שבכל סוגריים שמופיע בהם אחד מהם הוא יתחלף מכזה ( ) לכזה { ] בתודה ,ודה בטח יעזור לי כי אני לא צריך לשנות בכל טקסט את החיפוש כי אותם המילים שאני רוצה שכשיהיו בסוגריים ישתנה הסוגריים, אני רוצה בכל בכל הטקסטים אותם המילים בחיפוש ...(הכולל ה-כ"ד ספרים ועוד אבל את זה אני כבר אכניס במאקרו קודם אם יש אפשרות כזו...)
ולא רק על מילת בראשית ..
תודה רבה לכל העוזרים והמתייגעים!!!
זה מאוד דחוף לי.@www אמר בבקשה | פקודות מקרו בוורד.:
במקרה כזה קל לשים פעמיים את המשתנה שכרגע בטיפול.
זה לא פעמיים זה הרבה יותר פעמים, כי יש לי רשימה ארוכה של ספרים שאצטרך להכניס לשם, אבל אם אין ברירה אחרת אז בטח שזה יעזור לי כי אני צריך את זה בכמויות של טקסטים וחייב לזה מקרו.
תודה. -
@הללוהו
אני יביא את הקוד שעשיתי יש עוד מה לשפר אבל הרעיון עובד- תיצור קובץ אקסל ותכניס בעמודה A את כל הערכים לחיפוש תקרא לו שם ותשמור ולסגור את הקובץ.
- תכניס בוורד את הקוד הבא
Sub HighlightMatchesAndSummarize() Dim strArray As String 'GET DATA FROM EXCEL Dim xlApp As Object Dim xlBook As Object Const strWorkBookName As String = "C:\Users\User\Documents\uri.xlsx" On Error Resume Next Set xlApp = GetObject(, "Excel.Application") If Err Then Set xlApp = CreateObject("Excel.Application") End If On Error GoTo 0 Set xlBook = xlApp.Workbooks.Open(FileName:=strWorkBookName) 'xlApp.Visible = True xlApp.Visible = False 'transpose excel cells in our arrays Dim w w = 1 Do While xlApp.ActiveSheet.range("a" & w) <> "" strArray = xlApp.ActiveSheet.range("A" & w).Value Search (strArray) w = w + 1 Loop Set xlBook = Nothing xlApp.Quit Set xlApp = Nothing End Sub Public Function Search(text As String) Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .text = "\((*)" & text & "(*)\)" .Replacement.text = "{\1" & text & "\2}" .Forward = True .Wrap = wdFindContinue .MatchWildcards = True End With Selection.Find.Execute Replace:=wdReplaceAll End Function
- תשנה בשורה 6 את המיקום של הקובץ אקסל שיצרת
ונשאר לך פשוט להפעיל את המאקרו
בהצלחה
-
@yossiz ולכל העוסקים במלאכה, נראה לי דבנידון דידן כהמשך לדברי yossiz לעיל, עדיף לעשות כך:
\((בראשית)(*)\)
החלף ב:
{\1\2}
ואפשר דעי"ז יהיה יותר קל להשאיר את המשתנה ורק לשנות את ה'חפש את'...
אשמח לתגובות, וכן לכל מי שיש לו עוד סוגי הצעות ופיתרונות אשמח לשמוע.בתודה.
-
@הללוהו אמר בבקשה | פקודות מקרו בוורד.:
@מנחם
אני לא הסתדרתי עם רישום מיקום האקסל , זהו דבר ראשון וע"ז עיכב אותי המאקרו , מקווה שרק זה הבעיה.
(ניסית את הנ"ל והסתדרת עם זה, שאתה שואל?)אז אני ינסה לעזור לך
אבל אין לי יותר מידי לפרט כי @אוריי נתן הוראות מפורטות
בשורה 6 בקוד הנ"ל
ואני מצרף את השורה הזאת כאןConst strWorkBookName As String = "C:\Users\User\Documents\uri.xlsx"
בשורה הזאת רשום שם של קובץ שזה נמצא במחשב של @אוריי
אתה צריך לשנות את זה לשם של קובץ במחשב שלךאבל אני עדיין לא מבין מה לא הסתדרת?
אולי אתה לא מצליח למצוא נתיב של קובץ ?
אולי העתק הדבק לא עובד טוב?
כמה שאתה מנסה יותר לפרט ולפרט
ככה אפשר לעזור לך הרבה יותר(ובהקשר למה שכתבת לנסות את הנ"ל, בשבילי הדברים כ"כ פשוטים שאני לא מצליח להבין מה יש לנסות את הנ"ל-כלומר "רישום מיקום האקסל")
תפרט בבקשה וישמחו לעזור לך