Excel Generating Unique Values Across Multiple - excel

I am working on a project that will ultimately have over 100 sheets within the same workbook and am trying to figure out a method to generate a unique list of values across all of the sheets into another sheet.It is preferred I maintain all of the sheets so the data will be much easier to organize in the future.
The row count fluctuates from sheet to sheet while the type of text strings and the order of the columns remains the same. For example, on sheet 1 column A has the text 'red', column 2 has the text 'visual/foveal/target' and column C has 'Nontarget3'. Then in A45 and B45 the text strings are the same as A1:B1 but C1 is now 'Nontarget16'
The same variation can be possible with the different entry being column B instead of the Col A and C (which now have the same entries). In summary, I am interested in generating a list of all unique groups of cells within adjacent columns for all the rows in each sheet and throughout the workbook. Does the StackOverflow community recommend any courses of action I can explore to try and figure this out?

Related

Concatenate based off user Input

I have a excel file that hase 4 Sheets. 3 Sheets for Data based off of the ORG of that Data. Then 1 Sheet for User Input. Each of the Orgs sheets have up to 20 Columns A-T of Data that I want to concatenate. So basically if a user puts a value in Col A on the Input Sheeet the 3 other Sheets in COl U would then fill in. So for Example Say Col A has a value and COL F and Col H. Those COLS would then Concatenate in COL U on the 3 Other sheets.
I currently have a Formula that does this in Excel with a bunch of IF statements but this is very slow As the Sheets of a few of the data sets are very large. One with over 140K rows of Data. So I am hoping to find a way with VBA to check which Cols in the Input Sheet are Filled and Then concatenate in the Data Sheets based off that. I have a Search button and have automatic formulas off so the Search buttton currently then calculates all the formulas. So I can run this code off of that hopefully. but I don't know much about VBA and if it would speed this process up much more then it is currently as it can take a little while currently. I have attached some Screenshots of the Input and Data Sheets. Data being hidden though.
I currently do some lookups after the Excel formulas run with those Concatination to return values to the User. Both ORG 1 & 2 have 20 Columns A:T, Org 3 has 18 A:R. so thats the Only Differenece in the 3 Data Sheets
Once again all i am trying to do is concatenate whatever Columns the user inputs into each Sheet which has thousands of rows on each Sheet.
Input Sheet
What ORG 1&2 Sheet look like
What ORG 3 Sheet Looks like
Any help is appreciated. I have looked on here and seen VBA concatenation but nothing quite similar to this task.

Using two values in a sheet to filter and return values from a table in another sheet

I'm fairly new to coding and i've been googling around for the last few hours trying to solve this problem but it seems to be a little beyond what i'm able to do so i would be very grateful for some help
In Sheet1, I have a table which has columns between M - CV (175 columbs). For each column, i have an "ID number" value in row 3. From Row 6 to the end of the table, i have several "search terms" separated by commas in the column CV
In Sheet2, the corresponding "ID Numbers" are in column B. Column AN contains strings.
For each ID Number value in sheet1, i'm looking to find find all the corresponding cells in sheet2 where the ID number in Column B is the same, and Column AN of sheet2 contains at least one of the "search terms" in column CV
For each ID number, i'm hoping to join the entries in Column AN of sheet2 which match the criteria above and paste them into Row 5 of the respective column in Sheet1
I've gone around in quite a few circles trying to do this and i'm back to square 1 with no code to show for it.
I've tried to research both the autofilter function, and using for loops. The research i've done indicates that for loops are rather slow to run for a large data set.
I'm hoping to find a solution which is as easy to read and understand as possible
I hope i've given enough information for everyone to understand and help
THank you in advance
My Excel subscription has expired an I've started using Google Sheets for most of my spreadsheet work, so I tested this there. Some conversion may be required. I did this using formulas, not VBA also, not sure if that changes things for you.
If I understand correctly, you have two sheets with a shared key column, sheet 1 contains search terms across multiple columns, and sheet 2 contains search terms comma delimited in a single column.
With this setup we want to bring the search term column of sheet 2 into the correct row of sheet 1 by key using VLOOKUP. I made a named range in sheets which contained all my data on sheet 2 and called it "dst". My formula was then =VLOOKUP(A2, dst, 7, true) since my key in sheet 1 was in column A, dst was the range I was searching, my column with my delimited search terms was column 7 in relation to dst, and I had ordered sheet 2 by key. I pasted this formula relatively down all rows as needed.
We want to construct a regex string using our search terms across multiple columns in sheet 1, into a single cell. I used =JOIN("|", B2:E2) on sheet 1 since my search terms were in columns B:E, and this resulted in a regex that looked like this for me: alligator|dog|rabbit|lizard where alligator, dog, rabbit, and lizard, were all search terms in that row. Paste down relative as needed.
We want to run our regex against our search target cell containing the comma delimited search terms. I ran =REGEXMATCH(F2, G2) where F2 was my delimited search terms from sheet 2, and G2 was my constructed regex for the row. Paste down relative as needed.
A screenshot of my completed sheet 1:
Once you know which cells have matches you can do whatever you want.

Excel if cell in range contains specific text, export and compile on new worksheet

I am working with a decent size data set in excel. It has 5 columns and up to 5000 rows of data. Column A data is irrelevant to my goal as is Column B and E. The two columns I care about are, Column C which is numbers only in content, and column D which contains text (comments left about the numbers in Column C. For example, the cell D2 would state: “Machine is acting erratically and repairs have not been attempted. Issue has been ongoing for three months and multiple service call requests have been submitted.”
I am curious to know if there is a formula I can use to review ALL cells in Column D to determine if certain words are being used, such as “machine” or “not attempted”, and in some cases, BOTH of those words/phrases, and if the text IS contained in Column D, can the data of column C be compiled and moved into a new sheet to form a list.
Another way of looking at it, Review Column D and if key words or phrases exist, export the cell from column C and the same row to a new sheet in a list. Is this something that is outside of a mere formula and would require going into the macros to try and perform or?
So far I’ve managed to get Excel to count the number of times the phrases and words I’m looking for can be found, but I would like for it to be able to locate the referenced logs and move the log numbers into it’s own sheet.

How to merge/copy a single column's values in one sheet into another sheet based on the values of a column using excel?

I have two excel spreadsheets (that I can put onto two separate sheets within one sheet, one call A, and one called B).
Spreadsheet A/Or Sheet A
NAME,SPORT
Jordan,Tennis
Jordan,Basketball
Jess,Tennis
Mike,Baseball
Spreadsheet B/Or Sheet B
NAME,AGE
Jorden,5
Jess, 6
Mike, 10
I want to make it so that I can merge the two spreadsheets such that the "Age" column is added to Sheet A with the resulting spreadsheet:
NAME,SPORT,AGE
Jordan,Tennis,5
Jordan,Basketball,5
Jess,Tennis,6
Mike,Baseball,10
How can I do this?
Assume there is an exact match for names in Spreadsheet B to Spreadsheet A (first names only, no need to worry about last names).
Range of values could be variable, but if it's just a matter of making sure the range is updated as new values are put in manually, it's okay. Unless there is a smarter way.
In sheet A, cell C2 :
=INDEX('Sheet B'!$B$2:$B$4,MATCH('Sheet A'!A2,'Sheet B'!$A$2:$A$4,0))
Things to consider :
Is the size of your data variable ? > Do you need to adapt the look up range ?
Will you have duplicates in the names ? > What if two different kids are called "Jordan"

Count unique items on a list that meet multiple criteria

This sounds simple, but I'm getting a real headache trying to figure it out:
I have two tables in excel in the same workbook but on different sheets. I want to count unique items in column B on the first table that meet a criteria (based on the data that's in column A of that table) and appear on the second table (on a different worksheet).
Because the data I'm working with is confidential, I've made up the two tables below (I've just clipped .jpgs). They are similarly formatted, but in reality I have much more data.
I need a formula that counts the number of unique people in Column B of Table 1 who also appear in Column B of Table 2 and whose date (in Column A of Table 1) is on or before 4/2/2016.
In this example it should come out with the answer three (for Bob, Jim, and Sue).
Table 1
Table 2
Any help you can provide would be hugely appreciated!!
If you put this =IF(AND(COUNTIF('Second Table'!$B:$B,'First Table'!$B2)>0,$A2<DATE(2016,4,2),SUMIF(B1:$B1,B2,$C$1:$C1)=0),1,"") in C2, then auto-fill it down would do it and you could sum it then at the bottom..

Resources