I have a very long list in excel. I'm trying to de-dupe without re-organising the list. I have done a lot of de-duping before and I would normally just organise the list and use the below simple IF statement:
=IF(A2=A1,"DUPLICATE FOUND","no dupe")
However I have a list with 15,000 rows of data and I need to see if any two rows contain the same data:
=(IF(A2=(A1:A15000),"DUPLICATE FOUND","no dupe"))
So my question is what the heeby jeebies is wrong with my second statement?
Thanks
COUNTIF can be used with unsorted lists
=IF(COUNTIF($A$1:$A$15000,A1)>1,"DUPLICATE FOUND","no dupe")
Also, if you don't want to use a helper column, then excel has a 'Highlight Duplicates' conditional formatting:
Use Advanced filter with copy to a new location and Unique values only - or Remove Duplicates.
A2=(A1:A15000) will only test for A2=A1.
Related
I have a table with hundreds of rows in a very heavy excel workbook, I give a simplified like so:
And another table with combined text:
Is there a way I could have a formula that would allow me to check in the 1st table the individual values of each multiline cell and then add them in the total, to obtain something like this:
The point here being that the file might change in the future, rows could be added or deleted and so on, so I would like to be able to obtain the totals without splitting the multiline cells.
I've tried countIf but I don't think that's the proper way to go. Any help would be appreciated.
Multiple options really. You could try:
Formula in B10:
=SUMPRODUCT(ISNUMBER(FIND(A$2:A$7,A10))*B$2:B$7)
Or, a bit more in line of checking each individual value inside your combination:
=SUMPRODUCT(VLOOKUP(FILTERXML("<t><s>"&SUBSTITUTE(A10,CHAR(10),"</s><s>")&"</s></t>","//s"),A$2:B$7,2,0))
Is there a way to convert data from a row-array over to a single column, without breaks, using cell formulas?
Example Table:
The following explanation does what you are looking for, EXCEPT it also includes the empty (unanswered) questions. I can't think of a way to do also remove the empty ones.
source: https://www.extendoffice.com/documents/excel/2775-excel-convert-matrix-to-single-column.html
Another way would be to use VBA
I've attempted to dig through this online but surprisingly I can't find any solution to what I'm trying to do within Excel in an attempt to automate a series of tasks.
I have a list/column within excel that contains both numbers and letters, similar to this:
OriginalList
5682se
5385ba
5682aw
4444ss
4444we
8888aa
I currently have a column directly next to it, which displays Yes/No properties if the cells meet the criteria.
=IF(COUNTIF(F5, "44*"),"yes","no")
But this will no longer work as I now have multiple criteria requirements, (Cells that BEGIN with: 44,88,56)
At this point, I would prefer to simply generate a new list the ONLY displays the items that meet ONE of the forms of criteria, instead of what I was doing in the past. Keep in mind, I'm having to avoid generic Excel filters and need this to be performed within a formula. VBA solutions are welcome as well. Example of what I'm trying to do at this point:
OriginalList NewList
5682se 5682se
5385ba 4444ss
5682aw 4444we
4444ss 8888aa
4444we
8888aa
I've managed to get a count formula to work properly, with the same criteria I'm looking for, I've tried adjusting this to create a new Column list, but to no avail:
=COUNTIF($D$2:$D$8000,"44*")+COUNTIF($D$2:$D$8000,"88*")+COUNTIF($D$2:$D$8000,"56")
Here is an alternative using Microsoft365:
Formula in B2:
=FILTER(A2:A7,MMULT(--(--LEFT(A2:A7,2)={44;88;56}),{1,1,1}))
Or maybe rather use MATCH():
=FILTER(A2:A7,ISNUMBER(MATCH(--LEFT(A2:A7,2),{44,56,88},0)))
I hope I didn't get lost in translation there with comma's and semi-colon.
If you have Excel365 then try-
=LET(x,A2:A7,FILTER(x,(LEFT(x,2)="44")+(LEFT(x,2)="56")+(LEFT(x,2)="88")))
I'm convinced this has to be something very straightforward - I just couldn't find any stack exchange posts referencing it. I apologize if it's already out there.
I'm trying to filter out a couple of numbers from a long list that I have in an excel table. Something similar to an 'in' clause in SQL, but I'm not using a formula - just trying to use the table functionality in Excel 2010. Any help appreciated on how to input multiple numbers/id's at once.
The closest I've found so far is using advanced filters as suggested here - but it's not quite as simple as keying something into the search bar:
https://superuser.com/questions/623380/excel-filter-a-column-by-more-than-two-values
Thanks
The short answer is no, not really. Within Excel, you can filter with two conditions (via an or), but to my knowledge you can't do more than two.
If you are interested in a hack, here is one.
Create a second table with a list of values you want to filter. Make sure it's a table, not a range, for scalability
Create a new field in your original table, and vlookup your value against the new table. Something like this:
.
=IF(ISNA(VLOOKUP([#UID],NewTable[[#All],[FilterItems]],1,FALSE)),"","Y")
Now your original table will have a field you can filter on "Y" to get items in your list.
And because you made it a table, not a range, if you add items, the vlookup will dynamically scale to include those new items, without you having to do the cursed A:A range.
Home Tab > Highlight Column of values > Sort & Filter button > Filter > and from the excel sheet you can filter it by number from the top of the column of values.
I am trying to make a data entry Excel sheet and have a drop down column with a unique ID. In order to make data entry faster, I'd like the largest number (and most recent) to appear at the top of the list.
This is the formula for the drop down lookup
=OFFSET(Surveys!$S$1,1,0,COUNTA(Surveys!$B:$B)-1,1)
and currently returns this as an example
621378 on 05/09/2010 at 06:51 by JJ
Thanks
You can do it without VBA. Look at this article on making a sorted list using array formulae. So make a sorted list in Survey!C:C and reference it in your offset.
Short of writing a VBA code (and I'm not sure how one would do that), I don't think this is possible with Microsoft Excel.