View Single Post
  #14   Report Post  
Posted to microsoft.public.excel.programming,microsoft.public.excel.worksheet.functions
Toppers Toppers is offline
external usenet poster
 
Posts: 4,339
Default I need to search for then extract a specific portion of cell d

Ken,
No attachment .... but has it been solved using Ron's solution?

Sorry to have caused you so much frustration!

[For my own curiosity, can you e-mail your spreadsheet as I am curious to
find out why it works for me ((using the NG data) and not you].

"Ken" wrote:

Toppers -

I really appreciate your time and patience. I'm beginning to get frustrated!
I have tried everything you mentioned and it still appears not to be working
for me. In an effort to try and make it easier for you to see what I'm
getting, I have attached a excel spreadsheet containing the list I'm working
with and showing how I applied your formulas.

I'm sure it's working for you, therefore I'm certain I must be doing
something wrong. It appears that wherever there is upper case "X" it doesn't
seem to capture that but, it might be better if you could look at the whole
list. Please take a look and let me know if you can help.

Again, thanks for your help!

//Ken

"Toppers" wrote in message
...
..... or using a "helper" column use the following formula ...

=SUBSTITUTE(A1,CHAR(160),CHAR(32))

"Toppers" wrote:

Ken,
Apology from me ... I had a similar problem but ASSUMED (and

I
know I shouldn't) it was simply due to me

copying/pasting/"text-to-columns"
from the NG so I simply manually deleted extra characters from the end

of the
strings.

Further investigation indicates there are CHAR(160) (with CHAR(32) -

blanks)
characters at the end of most strings so these need to be removed. [Was

the
date extracted from a non-Excel source?)

The following VBA macro does this and appears to clear the problem. To
insert into the spreadsheet:

Alt+F11
Right click in VBA Project window
Insert==Module
Copy/paste code below

To use, highlight the range/column to be changed and RUN the macro.



Sub ReplaceChr160()
Selection.Replace What:=Chr(160), _
Replacement:=Chr(32), LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
End Sub

HTH

"Ken" wrote:

Toppers -

I didn't mean to imply your formula didn't work, just that it didn't

work
correctly for me, in my spreadsheet. Below, I have list the results

from
your 1st and 2nd formulas, running it on the same list both times. As

you
can see, in my spreadsheet, the results aren't what I expected. It

seems
where not capturing all the numbers. Any thoughts?

Column "A" (raw data) 1st Formula Results

2nd
Formula Results
8675-US (59) 59
1 (should be 59)
8675-EU x 5 #VALUE!
5
6330-02(18) 18
1 (should be 18)
6330-02CE (x10 ) #VALUE!

1
(should be 10)
6305-02 (1) 1
1
58516 (x117) #VALUE!
1 (should be 117)
6312-05(X30) #VALUE!
1 (should be 30)
604-800006-002 #VALUE!

1
5054-SUA-US #VALUE!

1
6312-05(X20 ) #VALUE!
1 (should be 20)
6420-05(30) 30
1 (should be 30)
6420-05 ( 9 ) 9
1 (should be 9)

I really appreciate your help!

Thanks,
//Ken

"Toppers" wrote in message
...
Sorry but it DOES capture (X4), (X10), (X117). These are a direct

copy
of
my results using the supplied formula.

700001103 (x4) 4
8675-US (59) 59
8675-EU x 5 5
6330-02(18) 18
6330-02CE (x10 ) 10
6305-02 (1) 1
58516 (x117) 117

It doesn't capture the situation where no quantity was present but

this
will:

=IF(ISERROR(VALUE(TRIM(MID(SUBSTITUTE(SUBSTITUTE(S UBSTITUTE(A8,"(","
"),"x"," "),")",""),FIND(" ",SUBSTITUTE(SUBSTITUTE(A8,"("," "),"x","

")),255)))),1,VALUE(TRIM(MID(SUBSTITUTE(SUBSTITUTE (SUBSTITUTE(A8,"(","
"),"x"," "),")",""),FIND(" ",SUBSTITUTE(SUBSTITUTE(A8,"("," "),"x","
")),255))))

700001103 (x4) 4
8675-US (59) 59
8675-EU x 5 5
6330-02(18) 18
6330-02CE (x10 ) 10
6305-02 (1) 1
58516 (x117) 117
58517 1

HTH

"Ken" wrote:

Richard,

I think your on to something here. Toppers response worked great

except,
as
you pointed out, it only captures the numbers in (##) or ( ## ).

It does
not
capture numbers in (x##) or ( x## ) or (X##), etc... Ultimately, I

need
to
capture all scenarios. If the part number does not have a quantity

at
the
end (usually indicated by the "x/X" or "(" ), then the result

should be
the
number "1", indicating a single part number.

EXAMPLE:
Cell "A"
700001103 (x4)
(part number) 700001103 (quantity of) (x4) < (i need

just the
number indicating the quantity, regardless of what it is/is not

wrapped
in)
4

Is this possible to do?

Thanks again, to you and Toppers
//Ken

"Richard Buttrey" wrote

in
message ...
What do you mean by foolproof?

It is foolproof for the limited set of 6 records you give as an
example.

Have you any other formats that are not covered by
the rules covered.

i.e
include characters between "(" and ")" unless the character is

"x" or
" " (space)
or if null result include all characters following the last

space

Regards

On Fri, 1 Sep 2006 11:27:02 -0700, Toppers
wrote:

Ken,
I tested this in your sample and it appears to work

BUT I
cannot
guarantee it is "foolproof"!

=VALUE(TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE( A1,"(","

"),"x","
"),")",""),FIND(" ",SUBSTITUTE(SUBSTITUTE(A1,"("," "),"x","
")),255)))

HTH

"Ken" wrote:

I need to search for then extract a specific portion of cell

data.
Below, I
have provided an example of what I'm trying to do.

Column "A" (raw data) Column "B" (end result)
700001103 (x4) 4
8675-US (59) 59
8675-EU x 5 5
6330-02(18) 18
6330-02CE (x10 ) 10
6305-02 (1) 1
58516 (x117) 117

I hope someone can help me.

Thanks.
//Ken




__
Richard Buttrey
Grappenhall, Cheshire, UK
__________________________