Excel IF Formula 3 - excel

I have a sheet with rows of data that I want to copy to a different sheet if the name in column a equals a certain value. For example:
A | B | C
Name | Color | Amount
Sue | Blue | $400
Joe | Green | $1000
Sheet Sue needs to bring columns B and C from Sue's records to it's worksheet if column a equals Sue
Sheet Joe needs to bring columns B and C from Joe's records to it's worksheet if column a equals Joe
and so on and so forth...
Can anyone help!?

Well, if you don't have too much data you can do this with array formulas.
Set up your main sheet (assuming it's Sheet1) with named ranges. Your A2:A100 name it Name, B2:B100, name it Color, and C2:C100 name it Amount. (Adjust the range as necessary)
Then, in each of the people's sheets, have header rows called Name, Color, and Amount. Then you can use this formula (entered with CTRL+SHIFT+ENTER):
=INDEX(INDIRECT(A$1),SMALL(IF(INDIRECT($A$1)=MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,255),ROW(INDIRECT($A$1))-ROW(Sheet1!A$2)+1),ROWS(Sheet1!$A$2:A2)))
Wrap IFERROR([formula],"") to hide the #NUM errors when you reach the end of the data.

Related

Excel match product id from two worksheet and take the price value

I have two worksheets,
Sheet1
ID DESCRIPTION COLUMN C
AABBCC jacket
BBCCAA shirt
CCAABB shoes
Sheet2
ID PRICE
AABBCC 100
BBCCAA 50
CCAABB 230
If the id of sheet1 match with id of sheet2 extract the price from sheet2 and write in column c of sheet1
Or use Index and Match
In C2 put
=IFERROR(INDEX(Sheet2!$B$2:$B$4,MATCH(A2,Sheet2!$A$2:$A$4,0)),"")
And drag down. Be sure to edit $B$2:$B$4 and $A$2:$A$4 to match your actual ranges.

How do I add information to a neighbouring cell if there is specific text in an existing cell?

I'm working with 311 datasets. I have monthly spreadsheets for a specific municipality with over 10,000 entries per sheet.
The columns in the datasheet provide details such as call description, time of call, date of call and the City Ward the call originated from.
Problem is that the spreadsheets only give the Ward number, i.e.:
creation_date | ward | call_description | call_type
01-Jan-15 | Ward 4 | Calendar to be Mailed | Solid Waste Collection
I have a separate spreadsheet that assigns shape coordinates for the respective ward:
OBJECTID | DESCRIPTIO | WARD_NUM | WARDNUMTEX | SHAPE_Length | SHAPE_Area
4 | XXXXX |4 | Ward 4 | 19871.78596 | 16418739.66
What I want to do is create a formula that when it sees Ward 4 in the one column, the SHAPE_Length and SHAPE_Area are assigned in the corresponding cell in the next column.
This is a job for vlookup().
Assuming that your tab with the shape coordinates is called wardinfo and that it starts in cell A1. Also assuming that your datasheets data starts in A1, meaning the ward number is in column B, your vlookup() to get the Shape_Length will be:
=vlookup(B1, wardinfo!C:F, 3, false)
And to get the Shape_Area:
=vlookup(B1, wardinfo!C:F, 4, false)
Just stick those in a new column on the same row and then copy them down.
You can use a VLOOKUP formula ( https://support.office.com/en-us/article/VLOOKUP-function-0bbc8083-26fe-4963-8ab8-93a18ad188a1 ), something like
=VLOOKUP(B2,Sheet2!D:F,2,FALSE)
Where B2 is the cell in the ward column your looking up, D:F is the range of columns you're using in the other sheet as a database (D is the column in the other sheet that has the Ward 4 index string, the rest of the columns you need should be to the right of that), and 2 is the column number that has the value you want to use as the result of the lookup (in that example, D is column 1, E would be column 2, probably SHAPE_Length and F would be column 3, probably SHAPE_Area).
You would put the formula a second time specifying column 3 for the second piece of info. The formula would go in the cell where you want the answer.

Excel multi column lookup

I am unsure how to Google this one. I have a table that looks like the below
Last Name | First Name | Team A | Team B | Team C
Smith | John | X | |
Doe | Jane | | X |
This would be the main sheet. The names in this sheet are divided into other sheet depending on what department they are in. Those sheets are setup in the same formats with the same columns. If the people in the main sheet are marked with an X in one of the columns I would like that same column marked in marked in the department sheets.
Your best bet might be to create a hidden column A where the value is a combination of column B and column C on all of your tabs. You could then use the standard VLOOKUP wrapped in an IFERROR clause.
For example,
=IFERROR(VLOOKUP(A1,Sheet1!A:F,3,False),"")
The IFERROR handles the instance that you may have a name on a sub tab not on the main tab. It returns blank instead of #N/A. The VLOOKUP is checking the value in A1 to what is in A1 on your main tab. A1 would be the combination of First and Last. The VLOOKUP would need to be in each of your team columns shifting the column returned number in each VLOOKUP.

Match name and copy row from sheet 1 to sheet 2 on corresponding column

I asked a very similar question to this one here, but I am trying to identify if a cell's numerical value is contained in a list of cells on a different sheet. If the cell from sheet A matches a cell in sheet B, mark a different column in B with a corresponding row in sheet A, otherwise leave it blank. An example is below:
Sheet A
Column A | Column B
-------------------
1 John
2 Sue
4 Bob
I would like the corresponding Sheet B to populate Column B like this:
Sheet B
Column A | Column B
-------------------
2 Sue
3
4 Bob
=IF(ISNUMBER(MATCH(I2, 'SALT, WOD, Champion Members'!A:A, 0)), "Y", "N")
I have been using the above answer to populate a different column in the same workbook, and I'm thinking I can maybe use this formula, but instead of "Y" or "N", somehow preserve the row.
You need to use VLOOKUP as already mentioned. But you will need to use another function to check for existence of the value, else you will get #N/A against ID 3
I used COUNTIF
=IF(COUNTIF($A$2:$A$4,E2)=0,"",VLOOKUP(E2,$A$2:$B$4,2,FALSE))
Use the VLOOKUP function:
=VLOOKUP(A1;Sheet1!A:B;2;FALSE)
Where A1 is the value you want to look up, Sheet1!A:B is the original sheet with the data.

Excel: Create Custom Sheet 2 Based on Data in Sheet 1

I have two sheets in a spreadsheet. Each sheet has a first column with common values (however they are not sorted the same and they are not all there in each sheet).
What I'm trying to do, if possible, is put a formula in sheet 2, where, if column 1 is a match for sheet 1, copies selective data from certain columns in that same row in sheet 1, to certain columns in sheet 2.
Example:
Sheet 1 has a heading setup and sample data row like this:
Title | Day of Week | First | Last
Supervisor | Wednesday | Mike | Jones
Sheet 2 has a heading setup and sample data row like this:
Title | Surname | Weekday
Supervisor | (empty cell) | (empty cell)
After running the mystery formula I'm looking for, placed in the 2 empty cells above, sheet 2 should match on the Supervisor key in sheet 1 and copy in data I have specified into each column, such as:
Title | Surname | Weekday
Supervisor | Jones | Wednesday
(In this case I have told it to map the "day of week" column to weekday, and map the "last" column to "surname").
I hope this is easy/possible??? Help???
VBA is not necessary. You can use a simple VLOOKUP:
=VLOOKUP(cell to look-up,
range where you want to look up the values (first column *must* contain the keys to look-up) including all columns that you want to retrieve,
the position of the column to be retrieved relative to the first column specified in argument 2,
0 (specifies you want an exact match))
For example:
=VLOOKUP(A1, Sheet1!$A$1:$D$150, 2, 0) ' Retrieves the 2nd column matching criteria in A1
Please notice, however, that you need your keys to be unique. Matching information based on the title seems a bit odd since it is likely there will be more than one person assigned to a certain role. For example, there may be more than 1 supervisor.
Use INDEX and MATCH (better than VLOOKUP).
I suggest renaming your headers so they match on both sheet.
Sheet 1 should be :
Title | Weekday | First Name | Surname
In sheet 2, cell B2 type in
=INDEX(Sheet1!$A:$D,match($A2,Sheet1!$A:$A,0),match(B$2,Sheet1!$1:$1,0))
You can drag and drop it in column C as well, it will work since you are using two MATCH functions with the cells properly anchored.

Resources