I am creating an quiz in Excel. The structure is:
Serial No. Question Select the right option Right/Wrong Marks
I have a list of some questions and options for answers are in a dropdown list. I want to randomize the questions with their answer options [means I want to randomize whole row].
Is there any build in Excel function?
You might achieve an adequate result with the addition of a column containing `=RANDBETWEEN(x,y) and sorting entire rows on that column. Here x could be your lowest Serial No. and y the highest. Can be changed with F9.
Not truly random because of inherent (minor) deficiencies is how RANDBETWEEN works and since capable of producing duplicate values will tend to favour the status quo.
Related
In a table I try to bring together the rows that have the same price by adding the quantities for an order book
all_order_ask:([]ask:();ask_qty:();exchange_name:())
Keep the same ask but when it's the same price add the quantities
To answer your followup question: combining the exchange names would be like this:
select sum ask_qty,raze string exchange_name by ask from all_order_ask
assuming that exchange_name values are symbols...if they're already strings then you only need to raze.
I'll highlight again some caveats from my earlier comment:
this leaves a lot of questions: how do you want the resulting table to be ordered? Assuming your ask prices are floats you will have to manage the fact that there will be float precision issues so two floats that appear to be the "same" may not be the same and so they won't group properly
Excel Novice using Excel for Business (Online) here.
I am having a difficult time wrapping my head around a way to write a function that does three things for me.
Check a specific row of data in a large table, preferably matching ID's between the two tables (I've been using XLOOKUP to ensure that results are keyed to a specific ID)
Find and return the Column index for every cell within the row with the string "Yes"
SUM associated points tied to the column indexes.
I am creating a new QA Scoring system, and all of the questions share the potential for "Yes" and "No" but depending on the question the number of points will be different. I have been approaching this with the idea that I could return the column indexes, convert them to the points associated to the column indexes, and then SUM them for a score, but I am open to different ideas.
Click Here for a Demo of what I am trying to do, included is the actual data set I was using.
Possible Points
=SUMIFS($O$2:$AH$2,INDEX(Raw_Data!D:W,MATCH(Scoring!A4,Raw_Data!A:A,0),0),"*")
Points Earned
=SUMIFS($O$2:$AH$2,INDEX(Raw_Data!D:W,MATCH(Scoring!A4,Raw_Data!A:A,0),0),"Yes")
These will work with your present setup, but in the long run it would probably be best to just add Possible Points and Points Earned columns to your Table3, if possible.
I would like to rank the headers of the columns based on the value of each row.
Apparently I can use the LARGE function, to get top values.
But the problem here is that I have duplicate values. And when I try to use INDEX-MATCH, it will return the same header multiple times. It will not fetch the second header of duplicate score.
Refer my desired output:
I tried the solution mentioned at:
https://www.exceltip.com/lookup-formulas/vlookup-top-5-values-with-duplicate-values-using-index-match-in-excel.html
but I do not want to include randomize function.
Thanks!
As mentioned in my comment, I added a fraction of the current column, so that the ranks are distinguishable by MATCH.
Note It's an array-formula which needs to be confirmed through CTRLSHIFTENTER
=INDEX($B1:$E1,MATCH(LARGE(($B2:$E2+COLUMN($B$2:$E$2)/100),COLUMN(A1)),$B2:$E2+COLUMN($B$2:$E$2)/100,0))
Depending on the number of ranks, you can add smaller fractions, so that the ranks don't increment.
About the question is to handle members of the same ranks. Two ways of handling indexes of the same values:
Place them in order in multiple cells.
Place them in order in one cell.
Excel functions can handle certain of them, such as sorting in ascending or descending order. But others, such as getting the sequence number of a value before sorting and getting the sequence numbers. Using esProc is much easy.
A
1 …(Data pasted from Excel)
2 =A1.split#n("\t")
3 =A2.(~.psort#z())
4 =A3.(["Self Direction","Power","Universalism","Achievement"](~))
5 =A4.concat#n("\t")
For more explanation,see http://c.raqsoft.com/article/1610327593846
DISCLAIMER: This is about our tool esProc. It’s freemium.
I have advanced Excel/Google Sheets skills. I have more of a conceptual question. I am happy with any solution (Excel or for Sheets, no difference for me).
I have a sheet where various coworkers have access and work with. It is used to define which product needs to go through which steps. Then when a part of a job is done, the status of the product is changed depending on criteria.
You can also think of it as projects and the status of a project.
The 3 examples shows how the data is input by the workers. Sometimes, the "No" cells are empty, sometimes they have a "No", sometimes for the same product, one criterion is empty, the other has a "No".
If I do a nested IF formula, I would have to create 32 of them (I believe, since its 5 criteria with each 2 options).
Obviously I can do that. I was wondering anyone has a better solution for me? Something more practical.
Thanks in advance!
Based on the data you've provided, it looks like your statuses are based on the number of Yes's in the input columns. Also you don't have a status shown for zero Yes's so I'll make an additional for that.
Given that assumption you can use a combination of the COUNTIF function (to count the Yes's), and the IFS function (to manage nested Ifs better) to drastically reduce the size of your function.
To make this cleaner I suggest you add a column and hide it containing: =COUNTIF([InputCriteria1to5Range],"Yes")
For the next formula assume the formula above is in B2. In your status column put the following:
=IFS(B2=5, Status1, B2=4, Status2, B2=3, Status3, B2=2, Status4, B2=1, Status5, B2=0, Status6)
Solution: Thanks to all for your help, I ended up firstly, creating ALL scenarios. This was actually the most complex part. See https://www.mrexcel.com/forum/excel-questions/654871-how-generate-all-possible-combinations-two-lists-without-macro.html (Answer from "Tusharm") where I had to repeat this process 5 times to have all possible outcomes. In the end, there were 192 combinations.
Then, I assigned a status for each combination.
Finally, for each product/row, I created another column where I concatenated the different criteria so that it looks exactly like my above combinations. Then finally index match the concatenated criteria to my combinations.
I'm trying to design a second page that shows % results of my data on page 1.
For example, Column F & G allow manual entry of numbers 1-4 which are based off data the user types in at another location.
This is being used for trade tracking in investments so there will be quite a few numbers but the end result will be a row will show a specific stock, it's subsequent data, whether it made or lost money, etc.
What I want to do in page 2 is using the numbers 1-4 which were typed in at columns F & G, translate that into an edge on page 2.
For example, if there were 50 columns of data typed out for trades executed, I could take the number of winning trades of a certain setup (say number 3) and divide that by the total trades of 50 to come out with a win % for that setup.
However, I have no clue to how to translate that forumla into a filter formula so that on page 2 I could see that of the numbers 1-4 (4 different setups) I could easily see the highest and lowest win % to determine the best setup to use.
I'm not the best in excel but I understand enough to code most of that, I simply have no idea how to take that end formula and add a filter to it so that it only uses partial results. I've got 4 other formulas I want to use on page 2 as well to help build something that could really benefit myself, but if someone could just show me how to filter data into a formula, I think I could take it form there.
Thanks for the help
Ben
You can also do something like this with array formulas
=MAX(IF(Sheet1!$F$2:$F$50=$A2,$E$2:$E$50))
(Press Ctrl+Shift+Enter [CSE], instead of just Enter when entering Array Formulas)
Also, take a look a the SUMPRODUCT function. It comes in very handy for filtering data. Here are some helpful links...
https://www.get-digital-help.com/2017/12/07/sumproduct-multiple-criteria/
https://www.get-digital-help.com/2017/12/08/sumproduct-and-if-function/
https://www.get-digital-help.com/2010/09/01/extract-a-unique-distinct-list-by-matching-items-that-meet-a-criterion-in-excel/