Case sensitive VBA Match
The "Find" method has a match case option.
--
Jim Cone
Portland, Oregon USA
"PBezucha"
wrote in message Dear Chip,
Your statement is absolutely correct. Still it is an example of overdoing in
VBA. If I should find the row of exact equality, the eqality itself does the
job, no binary comparison is needed.
If I can ask again, has somebody a smarter solution to the problem of
finding the row of the first, case identical cell content than my recurrent
code:
Option Explicit
Function MatchRow(DBName As String, Sought As Variant) As Long
Dim DB As Range, FirstRow As Long, LastRow As Long
With Worksheets(DBName)
FirstRow = 1
LastRow = .Cells(FirstRow, 1).End(xlDown).Row
MatchRow = FirstRow
On Error GoTo ErrExit
Do
Set DB = Range(.Cells(MatchRow, 1), .Cells(LastRow, 1))
MatchRow = Application.Match(Sought, DB, 0) + MatchRow - FirstRow
If .Cells(MatchRow, 1).Value = Sought Then Exit Function 'IDENTITY TEST!
MatchRow = MatchRow + 1
Loop
End With
ErrExit:
End Function
Of course browsing with the same identity test runs OK too, but (how much?)
more slowly.
Thanks for your interest
--
Petr Bezucha
|