ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Find specific info within a text string using VBA (https://www.excelbanter.com/excel-discussion-misc-queries/231415-find-specific-info-within-text-string-using-vba.html)

laavista

Find specific info within a text string using VBA
 
I have an order number embeeded in the title of an email. For example, the
order number below is 09-11111
" 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, " 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.





Jacob Skaria

Find specific info within a text string using VBA
 
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
---------------
Jacob Skaria


"laavista" wrote:

I have an order number embeeded in the title of an email. For example, the
order number below is 09-11111
" 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, " 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.





Jacob Skaria

Find specific info within a text string using VBA
 
Attach space to the search string before find

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

--
If this post helps click Yes
---------------
Jacob Skaria


"laavista" wrote:

I have an order number embeeded in the title of an email. For example, the
order number below is 09-11111
" 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, " 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.






All times are GMT +1. The time now is 06:11 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com