Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

MS Excel - setting a column value based on another

Posted on 2013-10-29
7
Medium Priority
?
142 Views
Last Modified: 2013-11-14
I have an excel spreadsheet that has any columns, one of which column(T) is a role value.  I want column (U) to be a value based on the content of column T

example
T Contains Civilian then S = Civilian
T Contains SLED then S = S&L
T Contains Defense then S = Defense/Fedsec
T Contains Healthcare then S = Healthcare
T Contains CS then S = CS/Intel
0
Comment
Question by:Matt Pinkston
  • 3
  • 3
7 Comments
 
LVL 18

Expert Comment

by:Steven Harris
ID: 39609381
Are these all of the values?  What format are they in originally (in column T)?  DO you have a sample workbook?
0
 

Author Comment

by:Matt Pinkston
ID: 39609420
It is all general text... Yes that should probably do it for total.
0
 
LVL 23

Expert Comment

by:NBVC
ID: 39609671
Maybe:

=LOOKUP(T2,{"Civilian","CS","Defense","Healthcare","Sled"},{"Civilian","CS/Intel","Defense/Fedsec","Healthcare","S&L"})

Note, the first array is in alphabetically ascending sorted order, the second array contains the corresponding strings to return.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:Matt Pinkston
ID: 39609998
did not work..

I tried I on a row that had ES XXXX CIVILIAN MANAGER in the lookup columns and it returned Defense/Fedsec
0
 
LVL 23

Expert Comment

by:NBVC
ID: 39610014
In that case try:

=LOOKUP(9.9999E+307,SEARCH({"Civilian","CS","Defense","Healthcare","Sled"},T2),{"Civilian","CS/Intel","Defense/Fedsec","Healthcare","S&L"})
0
 

Author Comment

by:Matt Pinkston
ID: 39647343
what is the 9.9999E+307,


=LOOKUP(9.9999E+307,SEARCH({"Civilian","CS","Defense","Healthcare","Sled"},T2),{"Civilian","CS/Intel","Defense/Fedsec","Healthcare","S&L"})
0
 
LVL 23

Accepted Solution

by:
NBVC earned 2000 total points
ID: 39647712
It is the largest number that Excel recognizes.  The LOOKUP() is looking for that number in the results of the the SEARCH() function.  It obviously won't find it, so it returns the last number that is smaller than the lookup value, this representing the last time it found a match in the SEARCH() function.  And therefore returns the corresponding item from the last array.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Some code to ensure data integrity when using macros within Excel. Also included code that helps secure your data within an Excel workbook.
This article describes how to use a set of graphical playing cards to create a Draw Poker game in Excel or VB6.
This Micro Tutorial will demonstrate how to use longer labels with horizontal bar charts instead of the vertical column chart.
Finds all prime numbers in a range requested and places them in a public primes() array. I've demostrated a template size of 30 (2 * 3 * 5) but larger templates can be built such 210  (2 * 3 * 5 * 7) or 2310  (2 * 3 * 5 * 7 * 11). The larger templa‚Ķ

926 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question