I am trying to implement a validation rule where if an opportunity is closed then there are certain fields have to be edited by a public group users. consider public group as RTS Delivery. my validation rule is below.By using below validation rule user is able to edit all the fields but we need only the mentioned fields in validation rule to be edited remaining fields should not be edited.

AND( $User.X7ticks_Oppty_and_Oppty_Line_Edit_Permis__c == FALSE,  Skip_Validation__c ==FALSE,
CONTAINS(TEXT(Opportunity__r.StageName), "Closed") ,
((ISCHANGED( Target_Go_Live_Month__c)) || ( ISCHANGED(MACS_Order__c )) 
|| (ISCHANGED( Ready_for_Billing__c)) || ( ISCHANGED(Go_Live_Date__c))),NOT( INCLUDES($User.PublicGroup__c,"RTS Delivery"))

2 Answers 2


Using validation rules you cannot prevent users from editing other fields unless you have checked every other field with ISCHANGED, which I believe is not possible if you have large number of fields.

What you can do is

  1. Create a page layout and mark other fields except the ones you want user to edit as read only from page layout.
  2. Create a record type "Closed read only".
  3. Assign the page layout to new record type.
  4. Write a work flow or trigger which changes the record type to read only when opportunity is closed.


You can also write a trigger and accomplish that.


we have achieved this usning validation rules . As there is relation between the obejcts which we have been used in validation rule hence we are able to execute it.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .