Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Here's an easy one that I can't see!
Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
InStr return the Absolute Position in the string, regardless of the
"Start position" the Start position just tells it to skip the first few characters. Charles Norm Lundquist wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Instr return the position of the character from the beginning of the string,
not relative to where you start. NickHK "Norm Lundquist" ... Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
It returns the position from the start of the string, not relative to where
you start searching. -- Regards, Tom Ogilvy "Norm Lundquist" wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Tom,
But why does the first example return 6 for the "P" when it is actually the 9th character? I must REALLY be missing something! Norm "Tom Ogilvy" wrote: It returns the position from the start of the string, not relative to where you start searching. -- Regards, Tom Ogilvy "Norm Lundquist" wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Sorry for being so blind today! I was expecting it to find the capital P.
I think I'll go crawl under a rock now! "Norm Lundquist" wrote: Tom, But why does the first example return 6 for the "P" when it is actually the 9th character? I must REALLY be missing something! Norm "Tom Ogilvy" wrote: It returns the position from the start of the string, not relative to where you start searching. -- Regards, Tom Ogilvy "Norm Lundquist" wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
use a binary compare if you want it to be case sensitive.
-- Regards, Tom Ogilvy "Norm Lundquist" wrote: Sorry for being so blind today! I was expecting it to find the capital P. I think I'll go crawl under a rock now! "Norm Lundquist" wrote: Tom, But why does the first example return 6 for the "P" when it is actually the 9th character? I must REALLY be missing something! Norm "Tom Ogilvy" wrote: It returns the position from the start of the string, not relative to where you start searching. -- Regards, Tom Ogilvy "Norm Lundquist" wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]() Norm Lundquist wrote: Tom, But why does the first example return 6 for the "P" when it is actually the 9th character? I must REALLY be missing something! Norm Two things: InStr is maybe(?) NOT case-sensitive but DOES only begin to look where you tell it to... AND returns position from beginning of string (as prev. stated). Will |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
See what value you get for:
InStr(4,"XXpXXpXXPXXP","P",vbBinaryCompare) NickHK "Norm Lundquist" ... Tom, But why does the first example return 6 for the "P" when it is actually the 9th character? I must REALLY be missing something! Norm "Tom Ogilvy" wrote: It returns the position from the start of the string, not relative to where you start searching. -- Regards, Tom Ogilvy "Norm Lundquist" wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
#10
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Aren't they doing it exactly the same way. Returning the position of the
character in that string--no matter where you started. It's not where you start the search, the function is returning the position in the string. Norm Lundquist wrote: Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! -- Dave Peterson |
#11
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Because it returns its position in the string, not relative to the start
point. -- HTH Bob Phillips (replace somewhere in email address with gmail if mailing direct) "Norm Lundquist" wrote in message ... Here's an easy one that I can't see! Why does InStr(4,"XXpXXpXXPXXP","P",vbTextCompare) return 6 and Instr(5,"ABC-123-XYZ","-",vbTextCompare) return 8??? I thought the second one would return 4 because the second dash is the fourth character when you start search at position 5. THANKS! |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
InStr Function Question | Excel Programming | |||
InStr | Excel Programming | |||
InStr | Excel Programming | |||
InStr function question | Excel Programming | |||
InStr and ADO | Excel Programming |