הפונקציה InStr

חשוב: מאמר זה תורגם בתרגום מכונה, ראה כתב ויתור. תוכל למצוא את הגרסה באנגלית של המאמר כאן לעיונך.

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

לקבלת דוגמאות

תחביר

InStr ([התחלה, ] מחרוזת1, מחרוזת2 [השוואה ] )

תחביר הפונקציה InStr כולל את הארגומנטים הבאים:

ארגומנט

תיאור

התחלה

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

מחרוזת1

נדרש. ביטוי מחרוזת שהמערכת מחפשת.

מחרוזת2

נדרש. ביטוי מחרוזת שהמערכת מחפשת.

השוואה בין

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

עצה: ב- Access 2010, בונה הביטויים מכיל IntelliSense, כך שתוכל לראות אילו הארגומנטים דורש את הביטוי שלך.

הגדרות

השוואה בין הגדרות הארגומנטים הם:

קבוע

ערך

תיאור

vbUseCompareOption

‎-1

ביצוע השוואה שימוש בהגדרה של המשפט Option Compare .

vbBinaryCompare

0

ביצוע השוואה בינארית.

vbTextCompare

1

ביצוע השוואת טקסט.

vbDatabaseCompare

2

Microsoft Office Access 2007 בלבד. ביצוע השוואה בהתבסס על המידע במסד הנתונים שלך.


מחזירות ערכים

אם

החזרת InStr

מחרוזת1 הוא באורך אפס

0

מחרוזת1 הוא Null

Null

מחרוזת2 הוא באורך אפס

התחלה

מחרוזת2 הוא Null

Null

מחרוזת2 לא נמצא

0

מחרוזת2 נמצא בתוך מחרוזת1

מיקום שבו נמצאת התאמה

התחל > מחרוזת2

0


הערות

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

דוגמאות

שימוש בפונקציה InStr בביטוי    באפשרותך להשתמש InStr בכל מקום שבו באפשרותך להשתמש בביטויים. לדוגמה, אם ברצונך למצוא את המיקום של התקופה הראשונה (.) בשדה המכיל כתובות IP (בשם IPAddress), באפשרותך להשתמש InStr כדי למצוא אותו, כך:

InStr(1,[IPAddress],".")

הפונקציה InStr בוחנת כל ערך בשדה כתובת Ip ומחזירה את המיקום של התקופה הראשונה. מכאן, אם החלק הראשון של כתובת ה-IP 10., הפונקציה מחזירה את הערך 3.

לאחר מכן, באפשרותך להשתמש בפונקציות אחרות, הפועלות על הפלט של הפונקציה InStr , כדי לחלץ את החלק של כתובת ה-IP שנמצא לפני הראשונה תקופה, כך:

Left([IPAddress],(InStr(1,[IPAddress],".") -1))

בדוגמה זו, InStr(1,[IPAddress],".") מחזיר את המיקום של התקופה הראשונה. הפחתת 1 קובעת כמה תווים נמצאים לפני הנקודה הראשונה, במקרה זה, 2. הפונקציה Left מחלצת לאחר מכן מספר זה של תווים מהחלק השמאלי של השדה כתובת Ip, ומחזירה את הערך 10.

להשתמש ב- InStr בקוד VBA   

הערה: הדוגמאות הבאות מדגימות את השימוש של פונקציה זו במודול Visual Basic for Applications‏ (VBA). לקבלת מידע נוסף אודות עבודה עם VBA, בחר הפניית מפתח ברשימה הנפתחת שליד חיפוש והזן מונח אחד או יותר בתיבת החיפוש.

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

Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default
' (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.

הערה: כתב ויתור בנוגע לתרגום מכונה: מאמר זה תורגם על-ידי מערכת מחשב, ללא התערבות אדם. Microsoft מציעה את תרגומי המכונה כדי לסייע למשתמשים שאינם דוברי אנגלית ליהנות מתוכן בנושא מוצרים, שירותים וטכנולוגיות של Microsoft. מכיוון שהמאמר תורגם על-ידי מכונה, הוא עלול להכיל שגיאות באוצר המילים, בתחביר או בדקדוק.

הרחב את הכישורים שלך
סייר בהדרכה
קבל תכונות חדשות לפני כולם
הצטרף למשתתפי Office Insider

האם מידע זה היה שימושי?

תודה על המשוב!

תודה על המשוב! נראה שכדאי לקשר אותך לאחד מנציגי התמיכה של Office.

×