Why would SQL Server ignore an index?
Typically indexes will be used by SQL Server if it deems it more expedient to use the index than to directly use the underlying table.

It would seem likely the cost-based optimizer thinks it would be more expensive to actually use the index in question.  You may see it use the index if instead of doing SELECT *, you simply SELECT T1Col1.

When you SELECT * you are telling SQL Server to return all columns in the table.  To return those columns SQL Server must read the pages for the rows that match the WHERE statement criteria from the table itself (clustered index or heap).  SQL Server is probably thinking the amount of reads required to get the rest of the columns from the table means it might as well scan the table directly.  It would be useful to see the actual query and the actual execution plan used by the query.