Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Say I have an Excel sheet of 100 records where there are 3 columns A, B and C.

The requirement is I have to get all the rows from column C if the text in column C matches with SQL Server.

Here the text SQL Server is in different formats SQL Server,sql Server,sql server

I used the command =IF(ISERROR(FIND("SQL Server", C2)), 1, 0) to find the matching rows in column C.

If a match is found it returns 0 otherwise it returns 1.

Now the problem is it is returning 1 for strings like sql server and sql Server.

How do I make the FIND command case insensitive?

share|improve this question

migrated from Sep 17 '11 at 11:25

This question came from our site for professional and enthusiast programmers.

up vote 3 down vote accepted
=IF(ISERROR(FIND("sql server",LOWER(C2))),1,0)
share|improve this answer
Thanks Silx also I tried this way =IF(ISERROR(SEARCH("sql server",LOWER(C2))),1,0) is this correct way? I could see all the field values matching with sql server are resulting 0 irrespective of the case. – user840963 Sep 16 '11 at 21:37
FIND is case sensitive, SEARCH is not (and can use wild cards) so you could use =IF(ISERROR(SEARCH("SQL Server",C2)),1,0) – chris neilsen Sep 16 '11 at 22:16
Thanks chris.I got the answer doing this way. – user840963 Sep 16 '11 at 22:52

Stumbled here looking for something else but the solution is buried so may as well post it here:

Use SEARCH instead of find. FIND and SEARCH are identical functions other than that SEARCH isn't case sensitive.

share|improve this answer

You must log in to answer this question.