Auto generate IDs from name and surname - excel

I have a list of email names such as this:
Name.Surname#domain.com
Anothername.Anothersurname#domain.com
I'm trying to figure out an excel formula, that would do the following:
John.Doe#domain.com would be translated into an ID - JD
Nick.Doe#domain.com would be translated into an ID - ND
However, I want to make sure if there's a John.Doe and a Jane.Doe, that they'd get ID's that aren't the same (so for example it would be JD1 and JD2).
So essentially, I don't want to have two JD, but JD1 and JD2.
How would I achieve that with excel?
Thanks!

Use:
=UPPER(LEFT(A1)&MID(A1,FIND(".",A1)+1,1))&TEXT(COUNTIF($A$1:A1,LEFT(A1)&"*"&"."&MID(A1,FIND(".",A1)+1,1)&"*"),"00")
this will always put a two digit number behind the initials, regardless of number of employees with those initials.

Related

Extract country codes from email addresses

In Excel, I am trying to return the two-letter country codes from email addresses in column C (e.g. "fr" for France), but ignoring generic TLDs such as "com", "net", etc. I do not want to use only =RIGHT(C2,2), which works OK, because this would return e.g. "om" from ".com" - "om" is the country code for Oman.
I have tried using the following formula, however this returns False, because RIGHT(C2,3) is three characters and cannot only equal "."
=IF(RIGHT(C2,3)=".",RIGHT(C2,2),"")
Could someone please indicate if there is a way to use If with a specific character "." in the third position from the right?
So a quick start:
IF(LEFT(MID(H2,LEN(H2)-2,3),1)=".",MID(H2,LEN(H2)-2,3),"")
And tested:
So, you may need to improve it as I have not trapped for any errors.
A few further tests:
BTW I can now wrap this in a lookup to retrieve the country name directly, e.g.
=XLOOKUP(IF(LEFT(MID(H2,LEN(H2)-2,3),1)=".",MID(H2,LEN(H2)-2,3),"") lookup_array, return_array)
Using list of country codes and countries taken from Wikipedia's list of country TLDs

Comparing value similarities in Excel

I have 3 columns in Excel that I'm trying to compare against.
E.g.
I want to make sure that the email address should be more similar to Enquirer Name than it is to Client Name.
My current formula looks at if Enquirer Name differs to Client Name, then show me email addresses that match more than 5 characters with Client Name, which doesn't quite eliminate enquirers related to clients where their email address satisfies the equation.
Is Excel capable of returning something like Enquirer-Email match 9 characters, Client-Email match 5 characters, therefore no need to alert. Whereas if it's the other way around, conditional formatting to highlight the line?
Many thanks in advance!

How to extract specific text from a field in Excel?

I have the following sample of data where I want to extract a specific text from the Order description field.
For example:
There are 3 records of sales with the same Order ID and Invoice ID, however, the Order Amount does not reflect the true total for each of these sales records.
Is there a way for me to extract the cost of items out from Order Description column in Excel? Please do share the formulas if there is any!
Thanks!
Well, you could use FILTERXML:
Formula in B2:
=INDEX(FILTERXML("<t><s>"&SUBSTITUTE(SUBSTITUTE(A2,",","")," ","</s><s>")&"</s></t>","//s[starts-with(., '$')]"),1)
If you don't have Excel O365, you could strip off the INDEX(). I have it in there to take the first amount from the resulting array of amounts to prevent spilling it.
If all your data follows same structure (that means the price starts with $ and it ends with , ) you can do it like this:
=MID(A1;SEARCH("$";A1);SEARCH(", ";A1)-SEARCH("$";A1))
EDIT: Wrap everything inside a VALUE function, so the output will be a number.

Sequential count using 2 columns

Using Excel 2013, I would like to make a unique count using 2 columns, like this:
So basically I would like to count each unique function within each name, but:
I want it to be sequential, within each name.
When the function repeats, within each name, I want it to always have the same value (so if Compliance appears 2 times for a given person, I want both to have the same value in both cases (which is 1, in Jim's case).
Is this possible using only formulas in Excel?
This might work for you. Worked for me with your sample data.
=IFERROR(IF(AND(A2=A1,B2=B1),1,IF(AND(A2=A3,B2=B3),1,1+C1)),1)

In Excel, how can i break ties when ranking students' tests?

I'm doing like a bit of a competition for my students in which they have a weekly test they have to complete and submit. The grade is stored in an excel column next to their names.
Following instructions i found, i was able to create a full working general TOP3 with the Average of the tests' grade and when i get to the TOP5 for the grades of the last submitted test, i get a three-way tie.
I use the LARGE function to find the top grades and the combination of the INDEX and MATCH functions to find and display the name associated to that mark.
(Something like this =INDEX($A$1:$A$29;MATCH(M12;$F$1:$F$29;0))
The problem is that the function compares the grade on it's left to find that value in the range of grades and then returns the corresponding name associated to that row; so, it returns the same name for the three grades.
I tried using an IF function to exclude the first-result-cell from the array in which the formula is looking so that when it finds a match it will be different from the previous one, but i have not manage to work it out...
You need to use a pivot table and filter the results to the top 3. A pivot table will display the ties.
Here is a link that #Jeeped gave which basically solves the problem!
Thank you all for commenting!
Multiple Ranked Returns from INDEX(…) with Duplicate Values:
http://tinyurl.com/naavhgf

Resources