I have a list of assets and asset numbers, they are not sorted in alphabetical order. I want all the assets with same names to have the same asset numbers. Please see below: Column AY is the Asset names and Column AZ is asset numbers. They need to look like below. I tried =IF(AY17=$AY$16:AY16,AZ16,AZ16+1) as an array formula, it doesn't work.
Please let me know if you have an idea
Asset Asset Number
Apple 1
Google 2
Microsoft 3
EMC 4
Microsoft 3
Google 2
Samsung 5
Apple 1
formula for AZ2: =IFERROR(VLOOKUP(AY2,AY$2:AZ1,2,0),MAX(AZ$2:AZ1)+1)
(the $ are essential, this is a standard, non-array formula)
drag or copy down.
Related
I currently have the following dataset:
What i would like to calculate is the following:
How can i find a way of extracting the number of times a company has only used 1 product, 2products, 3 products etc
The values in the rows are just the counts (so the amount of times a company used that product e.g. 1 means they used product once, twice means product 2 times etc)
So in the dataset image example
Company 1 has only used 1 product, i would like to apply this to the entire dataset, where only 1 product has been used. This is the same for company 2 as only 1 product was used but 3 times, so an output would say something like "2" - which corresponds to the amount of companies that have only used 1 product
And for example where there is more than one product used such as company 3, i would like to have it read "3" the amount of companies that used 3 products
etc
Any ideas
Please see my propsed outcome below:
Thanks
Add a new column PRODUCT_COUNT with the following formula, and drag down.
=COUNTIF(B2:I2,”>0”) to count the number of products utilized by each company more than zero times.
In your example you have 7 companies. So in your summary table, you could do another COUNTIF like so:
=COUNTIF($H$2:$H$8,1)
to count how many companies used exactly 1 product.
=COUNTIF($H$2:$H$8,2) to count how many companies used exactly 2 products.
=COUNTIF($H$2:$H$8,”>=3”) to count how many companies used 3 or more products.
If the number of companies changes, you would need to adjust the size of the range. A named range in the PRODUCT_COUNT column may be a good idea.
=COUNTIF(PRODUCT_COUNT,”>=3”)
Wondering if anyone can help.
I have 2 tables. The first one has a list of which dates each vendor work against their team leader name. Displaying only:
dates they worked (A) .... vendor name (B) .... the team leader (C)
This table has got 400 lines.
The second table has a list of ALL donations each vendor did per day. Some vendors has got 5 or 6 items per day. This table is pretty similar with the first one, but because the team leader change from one day to another, one vendor may get 2 or 3 different leaders every week (but only one on a day).
This table has got 10.000 lines.
So the columns of this table are:
dates they worked (G) .... vendor name (J) .... the team leader (K)
But the K column is not populated. I need a formula that goes something like on the K column:
if (G)=(A) AND (J)=(B) return the value (C) into (K)
Can anyone help with this?
Cheer,
Bruno
You should be able to use an array version of INDEX:MATCH formula:
=INDEX(A:C,MATCH(G1&J1,A:A&B:B,0),3)
NOTE: this formula must be entered with ctrl+shift+enter
I have a list of names with their direct supervisor that I am trying to expand upon by showing the employees the next few layers down that work for the list of names.
Column C of the linked image brings back results of 1-7 by matching the list of names in A to those in the column of 7 names. This shows that "HB" works for "SW" but that "SW" works for "ZJ," so "HB" is technically under "ZJ" too. What I am hoping to accomplish is to have a result similar to that shown below (or something that will show the employees under each supervisor). As shown below, in the data there are many names not being searched for but that are needing to be mapped to those that are being searched for. At the current count there are 1500 employee names with 7 of them being the ones searched out of a list of 143 supervisors that repeat for the employees.
Names to Look for: "Fictional names used for scenario"
Sam W. (SW) 1
Robert R. (RR) 2
Kegan G. (KG) 3
Isiah B. (IB) 4
Orville E. (OE) 5
Robert J. (RJ) 6
Zach J. (ZJ) 7
Column A Column B Column C Column D Column E
Superv. Employ.
HB PJ 7
SW HB 1 7
BE JR 2
HB IL 1 7
IL AP 1
BE WP 2
RR BE 2
KG JW 3
JW JH 3
ZJ SW 7
These results would then be used to create lists of employees under a certain person.
Things I'm not sure affects this would be how the name is constructed in the workbook. Example Sam W. is listed as Wilson, Sam in the workbook.
Of course if there is another way to achieve the final result that would be easier then I wouldn't mind an altered format to what I currently have. If anyone has an idea how to achieve this please respond. If there are any questions about more specific things in the workbook that I could supply that could help resolve this quicker also let me know for any future inquiries I may have. Thank you.
Well, if I understand what you're asking, you need to normalize your data. In this case, that means creating two tables linked by an employee code that you'll need to create.
Once you have these two tables, you can easily perform any query and summary report you need.
Giving a range that contains the 7 names and next to them 7 numbers the name AUarray then in C3 and copied down to suit:
=IFERROR(VLOOKUP(A3,LUarray,2,0),"")
and in D2 and copied down to suit:
=IFERROR(VLOOKUP(INDEX(A:A,MATCH(A3,B:B,0)),LUarray,2,0),"")
I think something similar (but maybe a lot longer!) would work for ColumnE but I don't have time for that at present.
`
I have a question about excel.
There is a sports tournament with multiple phases. And the results page looks something like this:
rank phase1 phase2
1 TOM ALBERT
2 MATT TOM
3 ROBIN MATT
The first place gets 5 points, second 3 and third 1 points.
So the summary I would like to get is like this
rank name phase1 phase2 total
1 TOM 5 3 8
2 ALBERT 0 5 5
3 MATT 3 1 4
4 ROBIN 1 0 1
I cant figure out how to generate it simply, so if I copy-paste the results from phase3 to somewhere in my excel sheet, the summary page would also update.
If you can support me with advice or just a working template, I would be thankful!
Thank you for your time!
I've done you a basic example below...just list all 50 players in the summary page and copy the formula down as it is - as per the question it only records a value for the top 3 places, hope this helps if not please let me know :)
Example file here
Assuming the structure you defined and that when you paste phase 3 it will have its header ("phase3") on the same row as the other results, you could have the following formula on your Table 2:
{=SUM(IF(IFERROR(MATCH($B2,INDIRECT("Sheet1!"&CHAR(64+MATCH(C$1,Sheet1!$1:$1,0))&":"&CHAR(64+MATCH(C$1,Sheet1!$1:$1,0))),0)-1,0)={1,2,3},{5,3,1},0))}
Note: entered as Array formula: CTRL + SHIFT + ENTER
Formula uses the Table 2 headers ("phase1","phase2", etc.) and the players names to find the results for each phase. It then uses the predefined arrays that determine points given per position. The final sum is to bring the result that are in array (other values in array are 0) into single value.
Total would sum results per player.
Under the rank cells you would place the following formula:
=RANK(F2,$F:$F)
Which would provide you the rank of each player (Column F containing the totals).
Note that this would not sort your rank automatically but you could easily do this with Sorting or Autofilter. Hope this helps. Cheers.
I have a simple table consisting of two columns:
CLIENT REVENUE
___________________________
A 5000 USD
B 7500 USD
C 6000 USD
D 2500 USD
... ...
I want to create a dynamic top 10 client list, that automatically updates itself as revenues are changed.
I have already been able to list the top 10 revenues by using the LARGE function, but I have trouble with getting the clients' names next to the revenue numbers.
A simple way to do this would be to combine the Index and Match functions like this :
=INDEX(A:A,MATCH(E1,B:B,0))
This assumes your client names are in column A, Revenue is in column B, and the the large() revenue you are looking up is in cell E1
Additionally this simple approach will return the first client name with the 'large' revenue and in the rare event that two clients had the exact same revenue the above formula will show the first client twice.
An approach that handles the offset from duplicate revenue's would look like this:
=IF(ISNUMBER(E1),INDEX($A$1:$A$13,SMALL(IF($B$1:$B$13=E1,ROW($A$1:$A$13)-ROW($A$1)+1),COUNTIF(E$1:E1,E1))),"")
Note Array formula ctrl+shift+enter after typing, then drag down to the right of your Large() revenue numbers.
Here's a screenshot of the second formula deployed in the event that you need to use it:
(while the first approach is simple, cell F3 is an example of where the additional complexity may be required)