How to add sequencial number in equal strings in EXCEL for usernames - excel

The idea is that:
I separate full names into 2 other columns like fname + lname.
Then, I concatenate fname.lname to create a username.
So, we have got:
fname.lname#server.com
However, sometimes we find out there are few equal usernames and we need to handle it to become different from each other.
Then, we wanted to make an incrementation every username repeatition:
fname.lname1#server.com
fname.lname2#server.com
fname.lname3#server.com
How to meet this condition when working with EXCEL?
I'm really beging your help guys!
How to AUTO make SequecialUserName happens in Excel

Use COUNTIFS:
=A2&"."&B2&IF(COUNTIFS(A:A,A2,B:B,B2)>1,COUNTIFS(A$2:A2,A2,B$2:B2,B2),"")&"#server.com"

Related

Excel - Index/Match to Parse Column Data Until Desired Value Shows

I'm not sure the best way to word this question, but basically I have a big list of different names and IDs that will be visited multiple times with data pulled from a Survey123 form. One of the fields is asking if a part has been repaired, which will be no a maximum of 3 times before turning yes.
I'm using Index/Match to keep track of the dates the visits took place, but if I try it for the repair column it will always just return the first value in the repair column. Is there a way I can have it parse all the repair column values and change the result if it is Yes?
Here is a visual of what I'm trying to achieve, using Index/Match will stop at the first result rather than cycling through.
You may try below formula. If any of visit has Yes in repaired column then it will return Yes or will return No.
=IF(SUMPRODUCT((A3:A5=F3)*(B3:B5=G3)*(D3:D5="Yes"))>0,"Yes","No")
Or you can use XLOOKUP() with Search_Mode option -1 means search last to first order.
=XLOOKUP(1,(A3:A5=F3)*(B3:B5=G3),D3:D5,"",0,-1)
You can use FILTER to achieve this
=FILTER(C2:C4,(A2:A4=F4)*(B2:B4=G4)*(C2:C4="Yes"),"No")

How to search for items with multiple "-" in excel or VBA?

I have a list of item numbers (100K) like this:
Some of the items have format like SAG571A-244-4 (thousands) which need to be filtered so I can delete them and only keep the items that have ONE hyphen per SKU. How can I isolate the items that have two instances of "-" in it's SKU? I'm open to solutions within Excel or using VBA as well.
Native text filters don't seem to be capable of this. I'm stumped.
As per John Coleman's comment, "*-*-*" can be used to isolate strings that have at least two dashes in them.
I would add that if you're entering them as a custom text filter, you should lose the double quotes (so just *-*-*) as otherwise the field seems to interpret the quotes literally.
Seems to work for me.
If you want just an excel formula to verify this and give you a result of the number of hyphens (0, 1, or 2+), here is one:
=IF(ISERROR(SEARCH("-",A1)),"0",IF(ISERROR(SEARCH("-",A1,IFERROR(SEARCH("-",A1)+1,LEN(A1)))),"1","2+"))
Replace A1 with your relevant column, then fill down. This is kind of a terrible way to do this performance wise, but you avoid using VBA and possibly xlsm files.
The code first checks to see if there is one hyphen, then if there is it checks to see if there is another hyphen after the position the first one was found. Looking for multiple hyphens in this manner is cumbersome and I don't recommend it.

Finding matching datasets in two separate spreadsheets (Excel/Pages)

Using Pages (or Excel) I'd like to do the following:
I have a list of around 150 order numbers in one spreadsheet (A).
In another spreadsheet (B) I have a database of all customers (thousands) including their order numbers and their email addresses.
I need to find a way to match the order numbers in (A) with the associated email addresses in (B), i.e. I need a list of all email addresses of the orders in list (A).
I'm not very good at Excel/Pages. Does anyone have an easy solution for this? Thank you!
This is a common =VLOOKUP scenario. Without knowing more about the specific details of what you need it's difficult to write something for you.
As you say you're not very experienced I would recommend using the Insert Function Wizard to put something together, have a look at this guide on how to create a vlookup formula through the wizard: http://www.howtogeek.com/howto/13780/using-vlookup-in-excel/

Google Drive(Excel): Using Sumif for each unique string value without making a separate sumif command for each

Okay, Looked for about 30 minutes before I realized that I don't have the necessary knowledge to know the proper terms to use for this question... please help... If it matters, I'm using google docs, which as best as I can tell is ALMOST always compatible with Excel.
I have a spreadsheet that has two columns that I care about, Column B contains names, and Column T contains numeric values that I need to add together depending on the name in Column B.
="Reon: " & SUMIF('Form Responses'!B2:B10000,"Reon",'Form Responses'!T2:T10000)
I could make a few hundred sumif commands like the above, and add new ones every time a new name submits the form for the first time, but this is manual and would take forever. Is there a way to get the unique values of Column B, and put them into this formula to make a list resembling:
Name1: 247, Name2: 698, Name3: 420
The Exact formatting does not really matter as long as the name is displayed with the number and not a long string of indecipherable numbers. The generated list will be read by a real live person.
Thanks for any and all help you can provide.
Pnuts, Thank you for your wonderful links!
Here's the Code I used to manage it based on them.
Column One
=UNIQUE('Form Responses'!B2:B1000)
Column Two
=SUMIF('Form Responses'!B2:B100,UNIQUE('Form Responses'!B2:B100),'Form Responses'!T2:T100)
This gave me two columns with corresponding numbers and names in each. Thanks so much!

Excel Lookup with multiple queries

I have a question that I a may not be thinking correctly about. But I have an a long excel file that I pull from somewhere else with the following columns:
Project_Name1, Employee_Name1, Date_Worked1, Hours_Worked1
In another sheet I have these columns
Project_Name2, Employee_Name2, Begin_Date2, End_Date2, Hours_Worked2
This second sheet is filled with data, and works just fine.
However, it turns out that I have some employee names that I do not know that are also working on the same project. I need to figure out the names of the employees and then sum the number of hours they worked for a given period.
So I need a lookup with three criteria:
Project_Name1 = Project_Name2
Employee_Name1 <> {Array of Employee_Name2}
Begin_Date2 <= Date_Worked1 > End_Date2
Returning Employee name.
Once I have the employee name, I can do a sumifs=() and get the total hours they worked no problem.
I have tried a number of combinations of Index Match functions, using ctrl-shift-enter... and have not been able to figure out it. Any help would be greatly appreciated.
What you're talking about doing is extremely complicated and a little bit past what Excel was designed to do by default. However, there are a few workarounds that you can use to attempt to get the information that you're looking for.
It's possible to do multiple-criteria VLOOKUPs and SUMIFs by concatenating fields to make a multi-part identifier (Ex: Insert a new column and have a forumla in it like =A1&B1)
Open a new workbook and use Microsoft Query (I'm not sure if you can select from more than one sheet, but if you can select from multiple sheets like tables you should be able to write a semi-complex query to pull the dataset you want.
http://office.microsoft.com/en-us/excel-help/use-microsoft-query-to-retrieve-external-data-HA010099664.aspx
Use the embedded macro feature and use visual basic script to write out your business logic. (Hotkey is ALT+F11)
One way to do this would be to first create an additional column to the right of entries on the sheet you're trying to pull employee_name from: =ROW()
You could then use an array formula like you were trying to implement to pull the corresponding 'match' row:
{=SUM((project_name1=projectname2)*(employeename1<>employeename2)*(begindate<=date_worked1)*(date_worked1>end_date2)*(match_column))}
You could then use this returned match_column entry within the index as you described to retrieve the appropriate entries.

Resources