I want to check the data across several columns to see if there are duplicate rows.
To do this, I had to make a new column using
=ARRAYFORMULA(A2:A&C2:C)
Then I check if there are duplicates in this column with custom formula for conditional formatting
=AND(COUNTIF($D$2:$D,$D2)>1,NOT(ISBLANK($A2)))
This works, but it is dirty because I had to add a new column to the sheet, which is not allowed in some situation. Is there any other approach to do this using formula only?
Live sheet: https://docs.google.com/spreadsheets/d/1tKcUIP93opONONrVc5efnB2B4LcKsD5a8_v38Zi3pQY/edit?usp=sharing
Try only COUNTIFS() in custom CF rule.
=COUNTIFS($A$2:$A,$A2,$C$2:$C,$C2)>1
Related
I'm using conditional formatting in a google sheet.
I can apply this format to a specific column without issue.
But if I want to have the same format on all columns with each column being independent of the other, I don't know what range I should use.
When I set a range that takes applies it to all the columns, the conditional formatting is checking the content of all the cells across all the columns instead of checking the all the cells of each column separately.
I don't know if it's clear, basically, I want to each column formatted separately.
Since I'm using app script to generate the data in my sheet, I used the conditionalFormatRule builder object : https://developers.google.com/apps-script/reference/spreadsheet/conditional-format-rule-builder
It works like a charm.
But indeed, if I were to manually input data in the sheet, I would have to manually set the conditional formatting on each column... which is completely crazy.
Thank you anyway player0 !
In that case, you need to set up conditional formatting per each column separately (manually). So for columns A-Z you will have in total 26 conditional formatting rules in your spreadsheet per your sheet.
I have two sheets:
The first is the Master Sheet of responses to a survey.
The second will be an Update Sheet auto-generated from the new responses.
New responses can be either entirely new rows or edits/updates to previous entries.
I am trying to create a Conditional Formatting rule to auto-highlight any rows in the Update Sheet which do not match the corresponding rows in the Master sheet.
(A row "does not match" when it shares the same Respondent ID number as the Master sheet row but contains different information in the following cells.)
I'm also trying to make it ignore any empty cells.
I created named ranges: "Master" and "Update" on each sheet respectively.
Here's an image of what I'm trying to accomplish:
I'd like to accomplish this without scripts or using a helper column if possible.
Any help from you genuine experts out there would be greatly appreciated!
And here's the Demo Sheet for reference.
So far I have tried to use INDIRECT to accomplish the cross-sheet highlighting (below). However, that didn't work so I'm obviously doing something wrong.
CONDITIONAL FORMATTING:
- Apply to Range: A3:A200,F5:F200
- Custom Formula: =ISNA(match(A3,INDIRECT("Master!F5:AS"),0))
Update #2:
With help from #I'-'I I've been able to get closer with:
CONDITIONAL FORMATTING:
Apply to range: A3:F200
Custom Formula: =and(isna(match($A3,INDIRECT("Master!F5:F"),0)),not(isblank($a3)))
However, while it now highlights the "New Data" rows, it ignores the "Updated Data" row which has the same Respondent ID but different data in the following cells.
Any suggestions on how to rectify this would be appreciated!
Conditional formatting custom formula applied to range A3:F200:
=IF(LEN($A3),IFERROR(SUMPRODUCT(QUERY(INDIRECT("Master!F5:J"),"where F = "&$A3&" limit 1")<>$A3:$E3),1),)
HTH
Adam
With help from #I'-'I I now have the following solution, which works perfectly. :
=AND(NOT(ISBLANK($A3)),OR(IFERROR(ARRAYFORMULA(VLOOKUP($A3,INDIRECT("MASTER!F5:J"),COLUMN($A$1:$E$1),0)<>$A3:$E3),1)))
#I'-'I provided this explanation:
VLOOKUP to lookup ID(A3) in the master sheet and return the
corresponding 5 columns(5 cells).
VLOOKUP results are compared
against current row's 5 columns(<>A3:E3).
IFERROR to return TRUE if
lookup fails(suggesting NewData).
ISBLANK to ignore blank rows.
AND/OR/NOT Self explanatory. Used to combine TRUE/FALSE in a specific
way to achieve intended result.
The solution by #AdamL also works, but I don't know how to give credit to two answers at the same time.
I know how to apply conditional formatting if there are duplicate values in a column and I know how to use a formula to that references values from multiple sheets; however, what I want to do is apply formatting to a value if it is a duplicate in another sheet.
Example: I have sheets "friendlies", "healthcare", "IT" and "marketing" that contain names and contact information. Email addresses are always in column E.
Occasionally someone gets moved from a vertical, healthcare for instance, into the friendlies sheet.
When someone gets added to the friendlies worksheet, I want their email cell (in column E) in the friendlies sheet to turn red to remind me to remove them from the healthcare sheet.
Is it possible create a formula that looks to another sheet for a duplicate? I tried the below with no luck:
=countif(Healthcare!E:E,E1)>1, as well as =countif(Healthcare!E:Healthcare!E,E1)>1 and then finally =countif(Healthcare!E:Healthcare!E,Healthcare!E1)>1
Does anyone have any insights to help?
Presumably in connection with security, conditional formatting across sheets can be a bit of a rigmarole but the CF formula rule is very simple if you are prepared to make use of a helper column.
Taking a similar approach to what you tried, the helper column, say F should be populated with, in say F1, and copied down to suit:
=countif(healthcare!E:E,E1)+countif(IT!E:E,E1)+countif(marketing!E:E,E1)
Then it is just a matter of selecting ColumnE in friendlies and Format - Conditional formatting..., Custom formula is and:
=F1>0
with selecting red formatting of choice and Done.
An alternative to a helper column is to apply named ranges and INDIRECT:
=countif(indirect("hMail"),E1)+countif(indirect("imail"),E1)+countif(indirect("mMail"),E1)
hMail for example the name for ColumnE in healthcare.
I made a spreadsheet in google sheets in my last company which highlighted all my rows based on my qualifying conditions. I can't remember what conditional formatting I used.
I have tried the =IFAND and =AND functions along with others.
This is what I am trying to do:
If column B says DTC, even if something else is also in cell, and the dates are between two ranges I want it highlighted. Then I will have multiple rules that vary in dates and words. I have attached a new demo sheet to help.
https://docs.google.com/spreadsheets/d/1yX_Ohfdz0uRKvOB8hvOpcO2sb5dSaAP6Zw-aR_HzK2E/edit?usp=sharing
The formula I have in there now is =AND($B2="DTC",E$2>=DATE(2017,10,1),E$2<=DATE(2018,10,1))
To find both DTC and DTC-DCL with a wildcard try using if with search like this:
=if(and(search("DTC*",$B2),$E2>=date(2017,10,1),$E2<=date(2018,10,1)),"true","false")
Ok, I really have no business working in spreadsheets or any data entry program for that matter. So basically what I am saying is I have no idea how to use much of the formula and script/language features. So any help would be AWESOME!
Heres my issue...
I have two Columns, One contains Conditional formatting (Cell Color) for for 3 variables respectfully. The Other Column is a DropDrown with a list.
I'm hoping to avoid explaining to the person(s) here how to keep applying rules as new Rows are added to the end of the sheet.
Is there an a script someone could dig up for me that (I'm guessing onEdit) will automatically apply my Conditional Formatting and DropDowns the new Rows?
Thank you so much!
I'm not sure this would ever receive another answer so, for the moment considering only I need to to just compare b3-g3>color h3 b4-g4> color h41:
In New Google Sheets, apply your formula to H2:-
=arrayformula(if(G2:G=0,"",if(B2:B=G2:G,"Completed",IF(B2:B>G2:G,"Back Ordered",if(B2:B<G2:G,"Over Shipped")))))
and rules like these in Conditional formatting...:
and I think as new rows are added and data populated in A:G the formulae (both if and Conditional) extend automatically, with no fill where the cell in Column G is 0 or empty.