How to extract unique values from multiple columns in Excel?
Supposing you have several columns with multiple values, some values are repeated in same column or different column. And now you want to find the values which are present in either column only once. Are there any quick tricks for you to extract unique values from multiple columns in Excel?
- Extract unique values from multiple columns with array formula
- Extract unique values from multiple columns with Pivot Table
- Extract unique values from multiple columns with VBA code
- Extract unique values from one single column with an amazing feature
Here is an array formula also can help you to extract the unique values from multiple columns.
1. Assuming your values in range A2: C9, please enter the following formula into cell E2:
2. Then press Shift + Ctrl + Enter keys together, and then drag the fill handle to extract the unique values until blank cells appear. See screenshot:
If you are familiar with the pivot table, you can easily extract the unique values form multiple columns with following steps:
1. At first, please insert one new blank column at the left of your data, in this example, I will insert column A beside the original data.
2. Click one cell in your data, and press Alt+D keys, then press P key immediately to open the PivotTable and PivotChart Wizard, choose Multiple consolidation ranges in the wizard step1, see screenshot:
3. Then click Next button, check Create a single page field for me option in wizard step2, see screenshot:
4. Go on clicking Next button, click to select the data range which including the left new column of cells, then click Add button to add the data range to the All ranges list box, see screenshot:
5. After selecting the data range, continue click Next, in the wizard step 3, choose where you want to put the PivotTable report as you like.
6. At last, click Finish to complete the wizard, and a pivot table has been created in current worksheet, then uncheck all the fields from the Choose fields to add to report section, see screenshot:
7. Then check the field Value or drag the Value to the Rows label, now you will get the unique values from the multiple columns as follows:
With the following VBA code, you can also extract the unique values from multiple columns.
1. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.
2. Click Insert > Module, and paste the following code in the Module Window.
VBA: Extract unique values from multiple columns
Sub Uniquedata() 'Updateby Extendoffice Dim rng As Range Dim InputRng As Range, OutRng As Range Set dt = CreateObject("Scripting.Dictionary") xTitleId = "KutoolsforExcel" Set InputRng = Application.Selection Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8) Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8) For Each rng In InputRng If rng.Value <> "" Then dt(rng.Value) = "" End If Next OutRng.Range("A1").Resize(dt.Count) = Application.WorksheetFunction.Transpose(dt.Keys) End Sub
3. Then press F5 to run this code, and a prompt box will pop out to remind you select the data range that you want to use. See screenshot:
4. And then click OK, another prompt box will appear to let you choose a place to put the result, see screenshot:
5. Click OK to close this dialog, and all the unique values have been extracted at once.
Sometimes, you need to extract the unique values from a single column, the above methods will not help you, here, I can recommend a useful tool-Kutools for Excel, with its Extract cells with unique values (include the first duplicate) utility, you can quickly extract the unique values.
After installing Kutools for Excel, please do as this:
1. Click a cell where you want to output the result. (Note:Don't click a cell in the first row.)
2. Then click Kutools > Formula Helper > Formula Helper, see screenshot:
3. In the Formulas Helper dialog box, please do the following operations:
- Select Text option from the Formula Type drop down list;
- Then choose Extract cells with unique values (include the first duplicate) from the Choose a fromula list box;
- In the right Arguments input section, select a list of cells that you want to extract unique values.
4. Then click Ok button, and drag the fill handle over to the cells that you want to list all the unique values until blank cells are displayed, see screenshot:
More relative articles:
- Count The Number Of Unique And Distinct Values From A List
- Supposing, you have a long list of values with some duplicate items, now, you want to count the number of unique values (the values that appear in the list only once ) or distinct values (all different values in the list, it means unique values +1st duplicate values) in a column as left screenshot shown. This article, I will talk about how to deal with this job in Excel.
- Extract Unique Values Based On Criteria In Excel
- Supposing, you have the following data range that you want to list only the unique names of column B based on a specific criterion of column A to get the result as below screenshot shown. How could you deal with this task in Excel quickly and easily?
- Only Allow Unique Values In Excel
- If you want to keep only unique values entering in a column of worksheet and prevent the duplicates, this article will introduce some quick tricks for you to deal with this task.
- Sum Unique Values Based On Criteria In Excel
- For example, I have a range of data which contains Name and Order columns, now, to sum only unique values in Order column based on the Name column as following screenshot shown. How to solve this task quickly and easily In Excel?
You are guest
or post as a guest, but your post won't be published automatically.
To post as a guest, your comment is unpublished.· 7 months agoRegarding the formula version, could you explain in more detail what this portion is doing? *100+COLUMN($A:$C),7^8)),"R0C00") Specifically, what are the *100, 7^8, and "R0C000" doing? I'm understanding everything else, but I can't figure out what these are for.
To post as a guest, your comment is unpublished.· 10 months agoi've adjusted to my sheet but am only returning the first value in the defined array... what am i missing?
To post as a guest, your comment is unpublished.· 10 months agoHello, Cody,
The above formula works well in my worksheet, could you give a screenshot of your data problem here?
To post as a guest, your comment is unpublished.· 2 years agoMuchas gracias por la macro!!! me fue muy util
To post as a guest, your comment is unpublished.· 2 years agoThis array formula is CORRECT. Data in columns A to C, first result formula in cell D2... This one is different from other array formula that the later is copy formula down and Ctrl+Shift+Enter all formula. However, this array formula should be done the Ctrl+Shift+Enter in first cell and copy down.
To post as a guest, your comment is unpublished.· 2 years agodoes anyone know, for the output, how to make it into several lines but not into one line ? (currently one line result is achieved by worksheetfunction.transpose, but what i want to achieve (as result) is that when select for 3 columns, the returned result are also 3 columns, instead one
To post as a guest, your comment is unpublished.· 2 years agoCan you please submit the correct formula... the VBA function works just fine.
Just for my project, I rather use the correct formula.
To post as a guest, your comment is unpublished.· 3 years agoI love
Extract Unique Values From Multiple Columns With Pivot Table
To post as a guest, your comment is unpublished.· 3 years agohi
i have three unequal columns and want to extract unique cells of first column. how can i do it??
thanks in advance
To post as a guest, your comment is unpublished.· 3 years agohi
i want to extract unique cells from first column when i compare it with another columns (i have three unequal columns), how can i do it?
To post as a guest, your comment is unpublished.· 3 years ago=INDIRECT(TEXT(MIN(IF(($A$2:$C$9"")*(COUNTIF($E$1:E1,$A$2:$C$9)=0),ROW($2:$9)*100+COLUMN($A:$C),7^8)),"R0C00"),)&""
It doesn't work
To post as a guest, your comment is unpublished.· 4 years agoHey! Does anyone know why this formula seems to lead to an error after row 87? Like, it works perfectly and then at a certain point it just returns me errors for every row.. which is the worst! Because I'm so close to exactly what I need here...
To post as a guest, your comment is unpublished.· 4 years agoI am using your VBA code, but do not want the box to pop up. In stead I want to define exactly what cell range to use every time and exactly what box to put the output in. The input range and output would be on two different sheets. how do I update the VBA to do so? Thank you!!
To post as a guest, your comment is unpublished.· 5 years agoThank you!!! I have been spending hours trying to do this and to figure out what happened to the Pivot Wizard (other article).
To post as a guest, your comment is unpublished.· 6 years agoIs this formula complete?
To post as a guest, your comment is unpublished.· 3 years agowhat a waste of time..... formula does NOT work
To post as a guest, your comment is unpublished.· 6 years agoThis is not yet fixed :sad: