Welcome to the Smartsheet Forum Archives
The posts in this forum are no longer monitored for accuracy and their content may no longer be current. If there's a discussion here that interests you and you'd like to find (or create) a more current version, pleaseVisit the Current Forums.
Nested IF Statement for Flagging Duplicates
Hi,
I am looking to create a nested IF statement that allows me to look at multiple columns for duplicates. It is only true if there is a duplicate in each of the columns.
For Example:
First Last Job
Jeff Smith Programmer
Jeff Smith Designer
Jeff Smith Designer
In this scenario, I want a flag checked off when ALL 3 appear more than once. I am able to do this with a single column but with multiple it is a bit difficult. In this situation a person can have a multiple roles but I want to flag it when 3 criteria are all the same.
I have:
=IF(First:First,First2>1, IF(Last:Last,Last2>1, IF(Job:Job,Job2>1,1,0)))
The "2" is simply the designation of the row I am in so that it compares that row to the entire column. I've been coming up with UNPARSEABLE. Any ideas would be helpful.
Comments
-
Chris McKay ✭✭✭✭✭✭
Hi ogonzalez,
Based on the column names you have provided above, you could try this:
- Create a 4th column and call itDuplicate Flag.
- Set the column properties toCheckbox.
- On the 1st row, in the new Duplicate Flag column, enter the following formula:
=IFERROR(IF(LEN(First1) = 0, "", IF(COUNTIFS(First:First, First1, Last:Last, Last1, Job:Job, Job1) = 1, 0, 1)), 0) - Drag the cell handle (located bottom right) all the way down the column as far as you want.
- Right-click the Duplicate flag column header and selectLock Column
The formula will automatically hide the checkbox if there is no value in theFirstcolumn.
You can edit the formula to include more columns or even limit it to a certain range of rows if you choose. I hope this helps.
-
Schiff A. Employee
Hello,
I suggest taking a slightly different approach than using a nested IF statement for this. Here is an alternative solution:1. Create a column called "String" and enter the formula =First1+Last1+Job1
Drag the formula down to cover the entire range of data. This will create a single string out of the name/job combination (eg. JeffSmithDesigner
2. In the checkbox column, enter the formula =IF(COUNTIF(String:String, =String1) > 1, 1, 0)Drag the formula down to cover the entire range of data. This will look at the String column and count the number of times each string appears. If a given string appears more than once (in other words, if there is a duplicate) then the box will be checked.
3. (Optional) Hide the String column.
Thanks for using Smartsheet!
-
J. Craig Williams ✭✭✭✭✭✭
Both are excellent answers.
Questions for Chris:
Why are you checking for length?
What error are you getting / expecting that causes you to wrap the formula in IFERROR?
I think I get the same results with:
=IF(COUNTIFS(First:First, First1, Last:Last, Last1, Job:Job, Job1) = 1, 0, 1)
Comment for Schiff:
You don't need to put the equal sign in the criterion (=String1). The equals is understood. I avoid adding things that may confuse the parser.
Further general comments:
If the columns are sequential (and I suspect they are), I would use JOIN() instead of Schiff's concatenation.
=JOIN(First1:Job1, " ")
This results in a human readable result (Jeff Smith Designer instead of JeffSmithDesigner) which might be used elsewhere.
This also differentiated Jeff Smith Designer from Jef fSmit hDesigner. I doubt there are many cases where this is a problem, and I would not change it for this reason, only pointing it out.
I would tend for Schiff's method if cell numbers and formula count was not too high or if I needed/wanted the combined string for use elsewhere. Otherwise, Chris' solution (or mine without the error check and length) would be preferred.
Craig
-
Chris McKay ✭✭✭✭✭✭
Hi Craig,
IFERROR is there out of habit. I find it eliminates unwanted values being displayed in more complex formulas. It can probably be dropped from this example.
The inclusion of LEN is simply to hide the checkbox in the event the row contains no data (so it looks neater)
-
J. Craig Williams ✭✭✭✭✭✭
Chris,
Makes sense.
I avoid IFERROR unless I have specific error(s) I am expecting. I don't want to go digging for a masked problem. If I don't know what the errors might be, I return "error" instead of a valid value.
Craig
-
MATRIX Architect ✭✭✭
克里斯,你的解决方案为我工作。我现在试着g to do the same for a column called "Serial Number" to find duplicates. Can you help me with a formula for that?
Duplicates Serial Number
____ 789456123
____ 789456123
-
MATRIX Architect ✭✭✭
I played with it and figured it out...
=IFERROR(IF(LEN([Serial Number]1) = 0, "", IF(COUNTIFS([Serial Number]:[Serial Number], [Serial Number]1) = 1, 0, 1)), 0)
-
Marilen.Navarro103391 ✭✭✭✭✭
Hi Matrix,
I followed this serial number duplicates. The formula works for me. But I need to create a report to show the serial numbers which is not duplicated. Can you show me howto show this in report. The serial numbers must be unique. Thanks in advance.
-
Andrée Starå ✭✭✭✭✭✭
Hi Marilen,
Did you get it working or do you still need help?
Have a fantastic week!
Best,
Andrée Starå
Workflow Consultant / CEO @ WORK BOLD
SMARTSHEET EXPERT CONSULTANT & PARTNER
Andrée Starå| Workflow Consultant / CEO @WORK BOLD
W:www.workbold.com| E:[email protected]| P: +46 (0) - 72 - 510 99 35
Feel free to contact me about help with Smartsheet, integrations, general workflow advice, or something else entirely.
-
Marilen.Navarro103391 ✭✭✭✭✭
I'm good. Thanks.
-
Andrée Starå ✭✭✭✭✭✭
Excellent!
I'm always happy to help!
SMARTSHEET EXPERT CONSULTANT & PARTNER
Andrée Starå| Workflow Consultant / CEO @WORK BOLD
W:www.workbold.com| E:[email protected]| P: +46 (0) - 72 - 510 99 35
Feel free to contact me about help with Smartsheet, integrations, general workflow advice, or something else entirely.
Categories
=COUNTIFS([Item Number]:[Item Number], OR(@cell = \"C001\", @cell = \"COO2\", @cell = \"COO3\", @cell = \"COO4\"), [Status]:[Status], OR(@cell = \"Green\", @cell = \"Yellow\", @cell = \"Red\"))<\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":322,"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions","allowedDiscussionTypes":[]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[{"tagID":254,"urlcode":"formulas","name":"Formulas"}]},{"discussionID":109490,"type":"question","name":"HAS exact match within multiselect - Numbered Values","excerpt":"Scenario: Trying to identify a match if a value shows up in a multiselect from another sheet. Approach: I'm able to get 95% of this done through an index(collect(contains))) formula, but having some false positives show up wherever a partial match is found. I later found some suggestions that (has) would be more…","snippet":"Scenario: Trying to identify a match if a value shows up in a multiselect from another sheet. Approach: I'm able to get 95% of this done through an index(collect(contains)))…","categoryID":322,"dateInserted":"2023-08-25T19:26:32+00:00","dateUpdated":null,"dateLastComment":"2023-08-26T00:49:48+00:00","insertUserID":154049,"insertUser":{"userID":154049,"name":"Rob W.","url":"https:\/\/community.smartsheet.com\/profile\/Rob%20W.","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/defaultavatar\/nWRMFRX6I99I6.jpg","dateLastActive":"2023-08-26T00:49:37+00:00","banned":0,"punished":0,"private":false,"label":"✭"},"updateUserID":null,"lastUserID":154049,"lastUser":{"userID":154049,"name":"Rob W.","url":"https:\/\/community.smartsheet.com\/profile\/Rob%20W.","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/defaultavatar\/nWRMFRX6I99I6.jpg","dateLastActive":"2023-08-26T00:49:37+00:00","banned":0,"punished":0,"private":false,"label":"✭"},"pinned":false,"pinLocation":null,"closed":false,"sink":false,"countComments":2,"countViews":17,"score":null,"hot":3386003780,"url":"https:\/\/community.smartsheet.com\/discussion\/109490\/has-exact-match-within-multiselect-numbered-values","canonicalUrl":"https:\/\/community.smartsheet.com\/discussion\/109490\/has-exact-match-within-multiselect-numbered-values","format":"Rich","lastPost":{"discussionID":109490,"commentID":392694,"name":"Re: HAS exact match within multiselect - Numbered Values","url":"https:\/\/community.smartsheet.com\/discussion\/comment\/392694#Comment_392694","dateInserted":"2023-08-26T00:49:48+00:00","insertUserID":154049,"insertUser":{"userID":154049,"name":"Rob W.","url":"https:\/\/community.smartsheet.com\/profile\/Rob%20W.","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/defaultavatar\/nWRMFRX6I99I6.jpg","dateLastActive":"2023-08-26T00:49:37+00:00","banned":0,"punished":0,"private":false,"label":"✭"}},"breadcrumbs":[{"name":"Home","url":"https:\/\/community.smartsheet.com\/"},{"name":"Get Help","url":"https:\/\/community.smartsheet.com\/categories\/get-help"},{"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions"}],"groupID":null,"statusID":3,"image":{"url":"https:\/\/us.v-cdn.net\/6031209\/uploads\/KJPRLKL2FW16\/capture-png.png","urlSrcSet":{"10":"","300":"","800":"","1200":"","1600":""},"alt":"Capture.PNG"},"attributes":{"question":{"status":"accepted","dateAccepted":"2023-08-26T00:49:35+00:00","dateAnswered":"2023-08-25T23:58:23+00:00","acceptedAnswers":[{"commentID":392688,"body":"
Hi, <\/p>
Instead of applying the formula to \"Multiselect Text String\" row, did you tried with \"Multiselect Values\" row?<\/p>
=IF(HAS([Multiselect Values]@row, [Component ID]@row), \"MATCH\", \"NO MATCH\")<\/p>
Thank you,<\/p>"}]}},"status":{"statusID":3,"name":"Accepted","state":"closed","recordType":"discussion","recordSubType":"question"},"bookmarked":false,"unread":false,"category":{"categoryID":322,"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions","allowedDiscussionTypes":[]},"reactions":[{"tagID":3,"urlcode":"Promote","name":"Promote","class":"Positive","hasReacted":false,"reactionValue":5,"count":0},{"tagID":5,"urlcode":"Insightful","name":"Insightful","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":11,"urlcode":"Up","name":"Vote Up","class":"Positive","hasReacted":false,"reactionValue":1,"count":0},{"tagID":13,"urlcode":"Awesome","name":"Awesome","class":"Positive","hasReacted":false,"reactionValue":1,"count":0}],"tags":[]},{"discussionID":109474,"type":"question","name":"Help with date calculation formula","excerpt":"Hello, I'm trying to find a formula that will help me calculate how long an intake took to resolve. The rows I need to be calculated are Date Reported & Resolution Date. If the resolution date is blank I want it to use the current date in the calculation to see how long this issue has gone unresolved. Any help is much…","snippet":"Hello, I'm trying to find a formula that will help me calculate how long an intake took to resolve. The rows I need to be calculated are Date Reported & Resolution Date. If the…","categoryID":322,"dateInserted":"2023-08-25T16:29:39+00:00","dateUpdated":"2023-08-25T16:29:59+00:00","dateLastComment":"2023-08-25T23:01:30+00:00","insertUserID":165688,"insertUser":{"userID":165688,"name":"Nwest","title":"Systems Analyst","url":"https:\/\/community.smartsheet.com\/profile\/Nwest","photoUrl":"https:\/\/aws.smartsheet.com\/storageProxy\/image\/images\/u!1!ukHVZ18ImX4!BcjWAe8S9SY!l7iQo_PZHOx","dateLastActive":"2023-08-25T17:22:30+00:00","banned":0,"punished":0,"private":false,"label":"✭"},"updateUserID":165688,"lastUserID":8888,"lastUser":{"userID":8888,"name":"Andrée Starå","title":"Smartsheet Expert Consultant & Partner | Workflow Consultant \/ CEO @ WORK BOLD","url":"https:\/\/community.smartsheet.com\/profile\/Andr%C3%A9e%20Star%C3%A5","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/0PAU3GBYQLBT\/nXWM7QXGD6464.jpg","dateLastActive":"2023-08-26T14:46:22+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭✭"},"pinned":false,"pinLocation":null,"closed":false,"sink":false,"countComments":3,"countViews":23,"score":null,"hot":3385987269,"url":"https:\/\/community.smartsheet.com\/discussion\/109474\/help-with-date-calculation-formula","canonicalUrl":"https:\/\/community.smartsheet.com\/discussion\/109474\/help-with-date-calculation-formula","format":"Rich","tagIDs":[254],"lastPost":{"discussionID":109474,"commentID":392687,"name":"Re: Help with date calculation formula","url":"https:\/\/community.smartsheet.com\/discussion\/comment\/392687#Comment_392687","dateInserted":"2023-08-25T23:01:30+00:00","insertUserID":8888,"insertUser":{"userID":8888,"name":"Andrée Starå","title":"Smartsheet Expert Consultant & Partner | Workflow Consultant \/ CEO @ WORK BOLD","url":"https:\/\/community.smartsheet.com\/profile\/Andr%C3%A9e%20Star%C3%A5","photoUrl":"https:\/\/us.v-cdn.net\/6031209\/uploads\/userpics\/0PAU3GBYQLBT\/nXWM7QXGD6464.jpg","dateLastActive":"2023-08-26T14:46:22+00:00","banned":0,"punished":0,"private":false,"label":"✭✭✭✭✭✭"}},"breadcrumbs":[{"name":"Home","url":"https:\/\/community.smartsheet.com\/"},{"name":"Get Help","url":"https:\/\/community.smartsheet.com\/categories\/get-help"},{"name":"Formulas and Functions","url":"https:\/\/community.smartsheet.com\/categories\/formulas-and-functions"}],"groupID":null,"statusID":3,"attributes":{"question":{"status":"accepted","dateAccepted":"2023-08-25T17:04:22+00:00","dateAnswered":"2023-08-25T16:36:59+00:00","acceptedAnswers":[{"commentID":392622,"body":"