Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Formula to pull first word from text string in a column

11,840 views
Skip to first unread message

CrisT

unread,
Jan 8, 2009, 1:35:01 PM1/8/09
to
Hello, I was hoping someone could help me with a formula. I have a column in
a spreadsheet that has the following types of text (for example):

Subaru WRX
Subaru STI
Jeep Wrangler
Jeep Grand Cherokee

What I am looking for is a formula to pull the first word from the column
and put it in another column, say column T.

Thank you in advance!

Luke M

unread,
Jan 8, 2009, 1:47:03 PM1/8/09
to
assuming your data is in column A.

=LEFT(A2,FIND(" ",A2)-1)
--
Best Regards,

Luke M
*Remember to click "yes" if this post helped you!*

David Biddulph

unread,
Jan 8, 2009, 2:00:56 PM1/8/09
to
=LEFT(A2,FIND(" ",A2)-1)

You may want to add some error handling if there isn't always more than one
word.
=IF(ISNUMBER(FIND(" ",A2)-1),LEFT(A2,FIND(" ",A2)-1),A2)
--
David Biddulph

"CrisT" <Cr...@discussions.microsoft.com> wrote in message
news:DF295315-D059-4376...@microsoft.com...

CrisT

unread,
Jan 8, 2009, 2:14:01 PM1/8/09
to
Thank you Luke, it does work. I'm sorry I should have mentioned that I
wanted to run this formula down column "T". When I ran the formula this is
what I got for the rest of the rows:

subaru WRX subuaru
subuaru STI Jeep
Jeep Wrangler Jeep
Jeep Grand Cherokee subaru
subaru WRX subuaru
subuaru STI Jeep
Jeep Wrangler Jeep
Jeep Grand Cherokee #VALUE!

CrisT

T. Valko

unread,
Jan 8, 2009, 2:22:18 PM1/8/09
to
>You may want to add some error handling

Another way:

=LEFT(A1,FIND(" ",A1&" ")-1)

--
Biff
Microsoft Excel MVP


"David Biddulph" <groups [at] biddulph.org.uk> wrote in message
news:49664904$1...@glkas0286.greenlnk.net...

Pete_UK

unread,
Jan 8, 2009, 2:24:15 PM1/8/09
to
I think your data must start in row 1, whereas Luke's formula assumed it
started on row 2. It gave you the correct result first time because you have
Subaru on the first two rows.

Just change Luke's references from A2 to A1 in T1, and then copy down again.

Hope this helps.

Pete

"CrisT" <Cr...@discussions.microsoft.com> wrote in message

news:AD2BB897-7FBB-4B6C...@microsoft.com...

Pete_UK

unread,
Jan 8, 2009, 2:27:41 PM1/8/09
to
Hey, that's neat Biff !!

Pete

"T. Valko" <biffi...@comcast.net> wrote in message
news:%23dPKsZc...@TK2MSFTNGP03.phx.gbl...

Shane Devenshire

unread,
Jan 8, 2009, 2:31:01 PM1/8/09
to
Hi,

There is nothing wrong with the stated approach.

First make sure that the formula is refering to the cell on the same row as
the formula. In other words
=LEFT(A1,Find(" ",A1)-1)
should be entered in B1, if the first entry is in A1.


--
If this helps, please click the Yes button

Cheers,
Shane Devenshire

CrisT

unread,
Jan 8, 2009, 2:42:03 PM1/8/09
to
May I ask, what does the '&" "' do? Thanks for your help too!

CrisT

unread,
Jan 8, 2009, 2:48:01 PM1/8/09
to
Thanks everyone for your help, I had tried to figure this one out on my own
by searching some old posts but I'm still trying to understand some of
"language" of formulas and got frustrated.

Thanks again!

Rick Rothstein

unread,
Jan 8, 2009, 3:02:23 PM1/8/09
to
It makes sure the FIND function has something to find, hence no error
checking is needed. Also, as an aside, the LEFT function will return the
correct value even if you specify a length larger than the length of the
string you are applying the LEFT function to... so, when there no space in
A1, this FIND function will return a value one greater than the length of
the text in A1 and the LEFT function will just return the entire text
string.

--
Rick (MVP - Excel)


"CrisT" <Cr...@discussions.microsoft.com> wrote in message

news:FC71BF08-FB77-4044...@microsoft.com...

T. Valko

unread,
Jan 8, 2009, 3:02:46 PM1/8/09
to
I have to makeup for my "brain cramps" that I suffered yesterday!

--
Biff
Microsoft Excel MVP


"Pete_UK" <pash...@auditel.net> wrote in message
news:Onra1ccc...@TK2MSFTNGP02.phx.gbl...

T. Valko

unread,
Jan 8, 2009, 3:13:51 PM1/8/09
to
That prevents an error from being returned if the string doesn't contain a
space character. That may not apply in your situation but I thought I'd
suggest it for anyone that might be interested.

A1 = Jeep

=LEFT(A1,FIND(" ",A1)-1)

That formula will return an error because FIND can't find a space character
in the string. To prevent the error we append a space character: A1&" "

=LEFT(A1,FIND(" ",A1&" ")-1)

A1 = Chevy Camaro

=LEFT(A1,FIND(" ",A1&" ")-1)

That string does contain a space character and the space character that gets
appended is basically ignored because FIND will find the *first* space
character in the string.


--
Biff
Microsoft Excel MVP

"CrisT" <Cr...@discussions.microsoft.com> wrote in message

news:FC71BF08-FB77-4044...@microsoft.com...

igelco...@gmail.com

unread,
Jan 16, 2020, 10:50:19 PM1/16/20
to
This is great! I've been looking for this... Now, is there a way to extract the last word in a string ONLY if it is not the only word in the string. If it is then i want it to be found in the formula you wrote above. I'm basically trying to extract three names but not always is there a second or even a third name, for example, Cher. I have it all working but the last name will duplicate the first if it is a one word name. :(

Roger Govier

unread,
Jan 17, 2020, 7:25:45 AM1/17/20
to
On Friday, 17 January 2020 03:50:19 UTC, igelco...@gmail.com wrote:
> This is great! I've been looking for this... Now, is there a way to extract the last word in a string ONLY if it is not the only word in the string. If it is then i want it to be found in the formula you wrote above. I'm basically trying to extract three names but not always is there a second or even a third name, for example, Cher. I have it all working but the last name will duplicate the first if it is a one word name. :(

Hi
I would use a helper column.
With your data in column A, starting in A2, enter in B2
=LEN(A2)-LEN(SUBSTITUTE(A2," ",""))
This will tell you how many spaces you have in column A
Then, in C2 enter
=LEFT(A2,FIND(" ",A2&" ")-1) and copy down to give you all first names
In D2 enter
=IF(B2=2,MID(A2,FIND(CHAR(160),SUBSTITUTE(A2," ",CHAR(160),1))+1,FIND(CHAR(160),SUBSTITUTE(A2," ",CHAR(160),1))-1),"")
and copy down which will extract the middle name, if there is one.
Finally in E2 enter
=IF(B2>0,MID(A2,FIND(CHAR(160),SUBSTITUTE(A2," ",CHAR(160),B2))+1,256),"")
and copy down, which will find the last name, if there is one.

Hope this helps.

jackie...@gmail.com

unread,
Jan 24, 2020, 6:08:27 PM1/24/20
to
Hello,

The =split( cell, "character") function would do this. You'll just have to make sure that you have enough columns to the right to accommodate this split.

For your example, you would need 3 blank columns to the right available.

Assuming cells are listed from A1:A4, to get the type of car, you'll need to split using a space character (" ") using the formula below.

=split(A1, " ")
This will result in
A1 = Suburu WRX in B1 = split(A1,"") and showing in B1 = Suburu C1=WRX

...

=split(A4, " ")
This will result in
A4 = Jeep Grand Cherokee in B1 = split(A4,"") and showing in B4 = Jeep C4=Grand D4 = Cherokee

I hope this helps!

Guo Chen

unread,
Nov 15, 2022, 4:44:18 AM11/15/22
to
My request is pretty much the same but with one tweak:

if it has multiple words, I want the first one. If it is only a one-word string then I just want that one. =LEFT(A2,FIND(" ",A2)-1) does not work on the latter part. Any idea?

Philip Herlihy

unread,
Nov 15, 2022, 6:22:20 AM11/15/22
to
In article <e064849a-6ab6-4c6f...@googlegroups.com>, Guo Chen
wrote...
If you don't need a formula (which would mean cells are updated dynamically if
the 'source' changes) then Flash Fill can be useful, and it does work in your
situation where only one word is present.

https://www.youtube.com/watch?v=1KimYFzET1w

--

Phil, London
0 new messages