WorksheetFunction.Search Method
Search and SearchB(String, String, Object) locate one text string within a second text string, and return the number of the starting position of the first text string from the first character of the second text string.
Namespace: Microsoft.Office.Interop.Excel
Assembly: Microsoft.Office.Interop.Excel (in Microsoft.Office.Interop.Excel.dll)
Syntax
'Declaration
Function Search ( _
Arg1 As String, _
Arg2 As String, _
Arg3 As Object _
) As Double
'Usage
Dim instance As WorksheetFunction
Dim Arg1 As String
Dim Arg2 As String
Dim Arg3 As Object
Dim returnValue As Double
returnValue = instance.Search(Arg1, Arg2, _
Arg3)
double Search(
string Arg1,
string Arg2,
Object Arg3
)
Parameters
Arg1
Type: System.StringFind_text - the text you want to find.
Arg2
Type: System.StringWithin_text - the text in which you want to search for find_text.
Arg3
Type: System.ObjectStart_num - the character number in within_text at which you want to start searching.
Return Value
Type: System.Double
Remarks
Important
Search is intended for use with languages that use the single-byte character set (SBCS), whereas SearchB(String, String, Object) is intended for use with languages that use the double-byte character set (DBCS). The default language setting on your computer affects the return value in the following way:
-
Search always counts each character, whether single-byte or double-byte, as 1, no matter what the default language setting is.
-
SearchB(String, String, Object) counts each double-byte character as 2 when you have enabled the editing of a language that supports DBCS and then set it as the default language. Otherwise, SearchB(String, String, Object) counts each character as 1.
The languages that support DBCS include Japanese, Chinese (Simplified), Chinese (Traditional), and Korean.
Use Search and SearchB(String, String, Object) to determine the location of a character or text string within another text string so that you can use the MID and MIDB or Replace(String, Double, Double, String) and ReplaceB(String, Double, Double, String) functions to change the text.
Search and SearchB(String, String, Object) are not case sensitive. If you want to do a case sensitive search, you can use Find(String, String, Object) and FindB(String, String, Object).
You can use the wildcard characters, question mark (?) and asterisk (*), in find_text. A question mark matches any single character; an asterisk matches any sequence of characters. If you want to find an actual question mark or asterisk, type a tilde (~) before the character.
If find_text is not found, the #VALUE! error value is returned.
If start_num is omitted, it is assumed to be 1.
If start_num is not greater than 0 (zero) or is greater than the length of within_text, the #VALUE! error value is returned.
Use start_num to skip a specified number of characters. Using Search as an example, suppose you are working with the text string "AYF0093.YoungMensApparel". To find the number of the first "Y" in the descriptive part of the text string, set start_num equal to 8 so that the serial-number portion of the text is not searched. Search begins with character 8, finds find_text at the next character, and returns the number 9. Search always returns the number of characters from the start of within_text, counting the characters you skip if start_num is greater than 1.