I was reading a web page which was extolling the virtues of using inbuilt Excel functions over loops. Of particular interest was the relative efficiency of the .find function over looping through an unsorted range. I'm wanting to write a procedure that will search for a particular string in column C of a worksheet, using the .find function, and return the row number of the "found" cell.
I'm having a few difficulties here. A recorded macro will include a Columns("C:C").Select, then a Selection.Find statement. If I try to "abbreviate" this to a Columns("C:C").Find (or any variation I can think of) Excel informs me that my specified range is not a valid one. I'm also wondering how to look for only exact matches using .find. For instance, searching for "AS345" would not recognize "AS345-2" as a match. The .Find function returns a range, so I'm guessing that the .Row property would be the appropriate way to retrieve the row number.
Any advice on this appreciated