Two ways to do it - 1. Trigger - Write a Before Insert or After Insert trigger and query for Accounts with same email. In before, if you get any record, add error. In after, if you get more than 1 record, add error. 2. If Email is custom field, simply mark it as unique. If it's a standard field, create a custom text field and mark it as unique. Add a workflow field update to copy the Email field's value to this Custom field. You are done.
You can also acheive this without writing any code. You can use duplicate management in salesforce - create matching and duplicate rules on account object.
Refer this : https://help.salesforce.com/apex/HTViewHelpDoc?id=managing_duplicates_overview.htm
1. Trigger - Write a Before Insert or After Insert trigger and query for Accounts with same email. In before, if you get any record, add error. In after, if you get more than 1 record, add error.
2. If Email is custom field, simply mark it as unique. If it's a standard field, create a custom text field and mark it as unique. Add a workflow field update to copy the Email field's value to this Custom field. You are done.
You can also acheive this without writing any code. You can use duplicate management in salesforce - create matching and duplicate rules on account object.
Refer this : https://help.salesforce.com/apex/HTViewHelpDoc?id=managing_duplicates_overview.htm