הפונקציה InStr

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

ראה כמה דוגמאות

תחביר

InStr ([התחל, ] string1, חרוזת2 [, compare ] )

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

ארגומנט

תיאור

התחלה

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

string1

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

חרוזת2

נדרש. ביטוי מחרוזת ביקש.

השוות

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

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

הגדרות

הגדרות הארגומנט compare הן:

קבוע

ערך

תיאור

vbUseCompareOption

‎-1

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

vbBinaryCompare

0

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

vbTextCompare

1

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

vbDatabaseCompare

2

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


החזרת ערכים

אם

החזרת InStr

string1 הוא באורך אפס

0

string1 is Null

Null

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

התחלה

חרוזת2 is Null

Null

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

0

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

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

start > חרוזת2

0


הערות

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

דוגמאות

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

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

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

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

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

בדוגמה זו, InStr (1, [IPAddress], ".") הפונקציה מחזירה את המיקום של התקופה הראשונה. חיסור 1 קובע את מספר התווים שלפני התקופה הראשונה, במקרה זה, 2. לאחר מכן, הפונקציה Left מחלצת את התווים הרבים מהחלק השמאלי של השדה IPAddress ומחזירה את הערך 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.

הערה:  דף זה תורגם באמצעות אוטומציה והוא עשוי לכלול שגיאות דקדוק או אי-דיוקים. מטרתנו היא כי תוכן זה יהיה שימושי עבורך. תוכל לספר לנו אם המידע היה מועיל? הנה המאמר באנגלית לעיונך.​

למידע נוסף

פונקציות מחרוזת ואופן השימוש בהן

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

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

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

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

×