Find specific info within a text string using VBA

L

laavista

I have an order number embeeded in the title of an email. For example, the
order number below is 09-11111
"Re: 09-11111 sent to customer Jones"
The order number is not necessarily in the same spot for each email.

I am comparing two worksheets to see what does not match between the orders
and emails sent.

Using the following works for the above scenario--it finds the order #09-11111
Set C = .Find(OrderNum, LookIn:=xlValues)

Unfortunately, there can be revisions to the order, e.g., 09-11111_2 or
09-11111_3, etc.

The "find method" searches within a string, and when I need to locate JUST
09-11111, it finds it when it comes across the email containing 09-11111_2.
I need it to find the exact string within the email text, e.g, "Re: 09-11111
sent to customer Jones" and NOT "This is in response to your order of
09-11111_2".

Can you think of an alternative way to search?

Any help would be greatly appreciated.
 
J

Jacob Skaria

Hi

The below code using INSTR looks for an exact match and returns 0 if no
match found. If there is a match it returns the position.

Dim strETitle as String
Dim strSearch as String

strETitle = "your email title"
strSearch = "09-11111"

=Instr(1," " & strETitle & " "," " & strSearch & " ",vbTextCompare )


If this post helps click Yes
 
J

Jacob Skaria

Attach space to the search string before find

OrderNum = " " & Cstr(OrderNum) & " "
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top