简体   繁体   中英

Excel: If Cell in Column = text value of X, then display text (in the same row, but different column) on another sheet

This is a confusing request.

I have an excel tab with a lot of data, for now I'll focus on 3 points of that data.

  1. Team
  2. Quarter
  3. Task Name

In one tab I have a long list of this data displaying all the tasks for all the teams and what Quarter they will be on.

I WANT to load another tab, and take that data (from the original tab) and insert it into a non-list format. So I would have Quarters 1,2,3,4 as columns going across the screen, and Team Groups going down. I want each "task" that is labeled as Q1 to know to list in the Q1 section of that Teams "Block"

So something like this: "If Column A=TeamA,AND Quarter=Q1, then insert Task Name ... here." Basically, if the formula = true , I want to print a list of those items within that team section of the excel document.

I'd like to be able to add/move things around at the data level, and have things automatically shift in the Display tab. I honestly have no idea where to start.

If there is never a possibility that there could be more that 1 task for a given team and quarter, then you can use a formula solution.

Given a data setup like this (in a sheet named 'Sheet1'):

数据设置

And expected results like this (in a different sheet):

产量

The formula in cell B2 and copied over and down is:

=IFERROR(INDEX(Sheet1!$C$2:$C$7,MATCH(1,INDEX((Sheet1!$A$2:$A$7=$A2)*(Sheet1!$B$2:$B$7=B$1),),0)),"")

I came across this situation. When I have to insert the values into a table from an Excel sheet I need all information in 1 Column instead of 2 multiple rows. In Excel my Data looks like:

ProductID----OrderID
9353510----     1212259
9650934----     1381676
9572474----     1381677
9632365----     1374217
9353182----     1212260
9353182----     1219361
9353182----     1212815
9353513----     1130308
9353320----     1130288
9360957----     1187479
9353077----     1104558
9353077----     1130926
9353124----     1300853

I wanted single row for each product in shape of (ProductID,'OrdersIDn1,OrderIDn2,.....')

For quick solution I fix it with a third column ColumnC to number the Sale of Product

 =IF(A2<>A1,1,IF(A2=A1,C1+1,1))

and fourth Column D as a placeholder to concatenate with previous row value of same product:

=IF(A2=A1,D1+","&TEXT(B2,"########"),TEXT(B2,"########"))

Then Column E is the final column I required to hide/blank out duplicate row values and keep only the correct one:

=IF(A2<>A3,"("&A2&",'"&D2&"'),","")

Final Output required is only from Column E

ProductID  Order Id  Sno  PlaceHolder               Required Column
9353510    1212259    1    1212259                 (9353510,'1212259'),
9650934    1381676    1    1381676                 (9650934,'1381676'),
9572474    1381677    1    1381677                 (9572474,'1381677'),
9632365    1374217    1    1374217                 (9632365,'1374217'),
9353182    1212260    1    1212260
9353182    1219361    2    1212260,1219361
9353182    1212815    3    1212260,1219361,1212815 (9353182,'1212260,1219361,1212815'),
9353513    1130308    1    1130308                 (9353513,'1130308'),
9353320    1130288    1    1130288                 (9353320,'1130288'),
9360957    1187479    1    1187479                 (9360957,'1187479'),
9353077    1104558    1    1104558
9353077    1130926    2    1104558,1130926         (9353077,'1104558,1130926')

You will notice that final values are only with the Maximum Number of ProductSno which I need to avoid duplication ..

In Your case Product could be Team and Order could be Quarter and Output could be (Team,Q1,Q2,....),

Based on my understanding of your summary above, you want to put non-numerical data into a grid of teams and quarters.

The offset worksheet function will work well for this in conjunction with the match or vlookup functions. I have often done this task by doing the following steps.

In my data table, I have to concatenate the Team and quarter columns so I have a unique lookup value at the leftmost column of your table (Note: you can eventually hide this for ease of reading).

Note: You will want to name the input range for best formula management. Ideally use an Excel Table (2007 or greater) or create a dynamically named range with the offset and CountA functions working together ( http://tinyurl.com/yfhfsal )

First, VLOOKUP arguments are VLOOKUP(Lookup_Value,Table_Array,Col_Index_num,[Range Lookup]) See http://tinyurl.com/22t64x7

In the first cell of your output area you would have a VLOOKUP formula that would look like this

=Vlookup(TeamName&Quarter,Input_List,Column#_Where_Tasks_Are,False)

The Lookup value should be referencing cells where you have the team names and quarter names listed down the sides and across the top. The input list is from the sheet you have the data stored. The number three represents the column number the tasks are listed in your source data, and the False tells the function it will only use an exact match in your putput.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM