Determine sequence of most used words in Excel data set - excel

I need to determine sequence of most occurring word in a excel data set. Eg.
A B C D
Joyce Bremner Lewis Chapman Claire Harper
Lesley Brown Brian Clough Natalie Hassan
Emma Cartwright Janet Coldwell Gillian Hedley
Lewis Chapman Sheena Doig Lesley Brown
Brian Clough Karen German Emma Cartwright
Janet Coldwell James Gledhill Lewis Chapman
Sheena Doig Maggie Gowan Brian Clough
Which name is the most occurring and then 2nd most occurring word and so on.
I have found solution for determining the most concurring word in sequence when you take only one column into consideration but struggling to combine for multiple column. Below is the formula used:
Enter this array formula in C2:
=IFERROR(INDEX(A2:A10,MODE(MATCH(A2:A10,A2:A10,0)+{0,0})),"")
Enter this array formula in C3 and copy down until you get blanks:
=IFERROR(INDEX(A$2:A$10,MODE(IF(COUNTIF(C$2:C2,A$2:A$10)=0,MATCH(A$2:A$10,A$2:A$10,0)+{0,0}))),"")

Just in case the single column and pivot are a feasible idea...
Put all the names in one column
Format as table (my pref.)
Select "Summarize as pivot table"
Add "Name" field to Rows and Values

Related

Is there a way to use isnumber and search to pull from multiple cells and search multiple cells to return to multiple cells?

I have cobbled together the following formula, which works :
=IF(ISNUMBER(SEARCH(F7, $B$11:$B$53)), $C$11:$C$53,
IF(ISNUMBER(SEARCH(F8, $B$11:$B$53)), $C$11:$C$53,
IF(ISNUMBER(SEARCH(F9, $B$11:$B$53)), $C$11:$C$53,
IF(ISNUMBER(SEARCH(F10, $B$11:$B$53)), $C$11:$C$53, ""))))
(each "new line" in my post is a space)
F7, F8, F9, and F10 are search terms that I want to find in column B11:B53. Search terms in my "F" array are partial matches to text strings in B11:B53. I am then pulling corresponding data from C11:C53, and putting it in the corresponding rows in column F11:F53.
Is there a simpler way to write this formula that will allow scaling?
I would like to be able to easily add a search term in F1:F6 and easily expand my search array, without having to add
IF(ISNUMBER(SEARCH(F6, $B$11:$B$53)), $C$11:$C$53,
to my formula FOR EACH SEARCH TERM ADDED. If I want to add 10 new criteria the formula will become unwieldy.
I am also scaling this formula across multiple columns, so I can search column "B" and pull data from column "C", and place it in the same column as my search array, with different lists of search terms in each column.
Currently if one search term cell (ie F8) is blank, my entire column gets filled with data from C, rather than just the data that should be.
My goal is to have my entire column "C" be broken down across multiple columns based on what is in column B, and what is in the "Search list" (in this example, F7:F10)
Any help would be appreciated
This is an improvement. Try a formula like this in cell C11 if you have 4 search criteria entered into F7:F10:
=IF(SUM(COUNTIF(B11,"*"&F$7:F$10&"*"))=(ROWS(F$7:F$10)),B11,"")
It counts your criteria rows (F7:F10 in this case, so 4 criteria) and returns the value in B11 if the sum of findings matches the number of criteria rows. COUNTIF() can accept a range and permits wildcards.
To ignore a criterion, just put a ? or * into it.

Index Match Formula Shows Wrong Result

I have two table, this one is the initial table that contains raw data (on Sheet 2)
And the second table (on Sheet 1) contains formula based on data from first table
I use this formula to calculate the data, but as we can see on the picture, it doesn't produce right result. Could you please help me to modify the formula?
=IFERROR(INDEX(Sheet2!$E$2:$E$12,MATCH(Sheet1!$B$1&Sheet1!B$2&Sheet1!$A3,Sheet2!$C$2:$C$12&Sheet2!$B$2:$B$12&Sheet2!$D$2:$D$12,0)),"")
First the auxiliar column, using the concatenate operator & :
Then the formula would be:
=VLOOKUP(B$2&$E$1&$A3;Sheet2!$A:$G;6;0)
Change 6 for 7 if you want the description instead of Activity.
Please try this formula. It should go into cell Sheet1!B3 where it must be confirmed with Ctl+Shift+Enter because it's an array formula. (017)
=IFERROR(INDEX(Table,MATCH(1,(INDEX(Table,,3)=$A$1)*(INDEX(Table,,2)=B$2)*(INDEX(Table,,4)=$A3),0),5),"")
In preparation of this formula to work you need to set up a named range by the name of "Table" which comprises of Sheet2!A2:Fxx. Better set this range up dynamically so that it expands as you add more data but you can also declare it as Sheet2!A2:F1000 where 1000 is a number of rows you expect never to need.
This table has 6 columns, A:F which I intentionally made to include column A, which you don't need so that range columns and sheet columns are identical. Table,,3 simply defines the 3rd column. You can replace it with Sheet2!$C$2:$C$1000. If you do, make sure that all your ranges have identical sizes.
The 5 near the end of the formula, at ,0),5),"") identifies the 5th column of the range Table from which the result is returned if the 3 criteria match. Change this number to 6 to return the result from column F or to 1 if you ever need the value from column A.

Missing Data in Excel between 2 columns

I'm working with a fairly large data set, I have a list of names which appear more than once in column B and in column C i have the team they are part of.
In column C which displays there team name most the data is there but I do have a few 1000 where no team name is not present. Is excel smart enough to go for example Jamie#soso is part of design because it case in "B36" "C36" and then assign design to the missing field?
Here is an example of the data with the missing team names
And here is a view with what im looking for end result wise.
If I need to explain this better please let me know and thank you in advance.
On the assumption that there are no ambiguous entries, you could do the following:
if the order of the data is important, add an index column and insert ascending numbers for all rows of data (hint: enter the first two values manually, then select the first two cells and double click the fill handle to fill all the way down to the end of the data)
Sort the data by name and then by team as secondary sort
select column B
hit F5 to open the Go To dialog
click Special button
tick the option Blanks and click OK
now all blank cells in column B are selected
without changing the selection start typing a = sign, then hit the up arrow on your keyboard.
hold down the Ctrl key on your keyboard and hit Enter
now each previously blank cell in column B will have a formula that references the cell above.
copy column B
paste special on column B and paste values to get rid of the formulas
use the index column created in the first step to return to the original sort order
If you want this exercise to be repeatable, you could also use Power Query. Load the data into the Power Query editor, sort by name (ascending) and team (descending), select the Team column and click Transform > Fill > Fill down. The screenshot shows the result
To do without VBA, add a helper column in column C and insert this array formula:
{=INDEX($B$1:$B$17,MATCH(A1 & "?*",$A$1:$A$17&$B$1:$B$17,0))}
To create an array formula, type in the formula without the curly brackets, then press CTRL+SHFT+ENTER. Excel will add the curly brackets.
When you have your column C results, you can copy and paste values to overwrite column B if you want to get rid of your helper column.
This formula looks for rows with a value in A that matches the current row (i.e. same name), and any value in B that isn't blank; "?*" ensures at least one character. The match look up value is therefore A & non-blank B, and the array it's looking in is both A column range and B column range. The INDEX part provides the value from column B if it exists.
Names with no matching column B already completed will give you #N/A so you can manually enter those.

Formulas not working in excel when i put 58+2 instead of 60?

I want to put 58+2 instead of 60 in Microsoft Excel cells. But, when I do that the cell is not counted for summation or other functions. How do I put 58+2 in a cell and get results?
If I put =58+2 inside the cell, due to AUTOSUM it automatically turns to 60
enter image description here
You can solve this with a couple of helper columns (which you can then hide from view). I'll give you two options/examples
In the example titled 'From helper columns to display' In Columns C & D I keep the raw values of the marks and the bonus. Then in Column A I use the
formula
=C3&"+"&D3
To give my result. In column F I can then calculate totals etc. based on the columns C and D.
In the example titled 'From display to helper columnns' this assumes you already have the data stored as xx+x. In column C I use the formula
=VALUE(LEFT(A7, FIND("+",A7)-1))
And column D
=VALUE(RIGHT(A7, LEN(A7)-FIND("+",A7)))
To get the actual values. I can then again use these columns to calculate my totals etc.
The columns C & D can be hidden for visual purposes. Both of these scenarios will achieve the same result it just depends what the format of your data is currently in as to which one you would use
For any cell you want to calculate instead of hard-code, add an equals sign at the beginning
=58+2
will be evaluated by Excel to be a function rather than text and will evaluate it.

Formula to search through b c d and bring value of A

Looking for a formula to search a number of columns and rows, if they find a exact match to bring value of column A back.
This will be a large sheet with hundreds of rows down and approx 6 columns.
You may be able to perform this search by concatenating the values of each column into one 'super column', and then searching for your term with a wildcard. The first time that term comes up, you know the row, and the column it was in is irrelevant.
Note that this only works if 2 entries from adjacent columns couldn't create the search term incidentally. For example, 'cat' in cell A5 and 'dog' in B5 would concatenate to 'catdog', and would create the term 'atdo' between the 2nd & 5th characters. If 'atdo'was your search term, it would pick up a false positive on row 5. This risk won't always exist, and would depend on the configuration of your data.*
Example:
Assuming your data is in columns B:G. Make H1 equal to the following formula, and drag down:
=B1&C1&D1&E1&F1&G1
Then your formula, assuming your search term is "foobar", would be as follows:
=INDEX(A:A,MATCH("*foobar*",H:H,0))
Assuming your search term is found in cell I1, the formula would be:
=INDEX(A:A,MATCH("*"&I1&"*",H:H,0))
*As pointed out in the comments below, to avoid picking up 'junk', you could insert data guaranteed not to be present in your search terms, in order to avoid a false positive. For example, the formula in column H could be adjusted to:
=B1&"|"&C1&"|"&D1&"|"&E1&"|"&F1&"|"&G1
Note that because the 'pipe' symbol would not be in your data [if it would, insert your preferred 'special' symbol(s) instead], any search term which starts in the middle of B1 and is continued at the beginning of C1 would not create a false positive.

Resources