First off, I apologize if I'm posting in the wrong area. Mods I won't be offended if this thread gets moved

I currently have an Excel application that uses names in a Spread Sheet, to "query" Outlook to retrieve their Alias, JobTitle, Department and Manager. The code works, but the problem is, is that it iterates through the entire public address book for each user in the list. The organization I work for currently has approximately 45,000 entries in the public Exchange folder so it can take a while. I am aware that there is a "Find" method that can be used to streamline this process, but for the life of me I just can't get it to work. I'm posting my original code below, hoping that someone here can help with this. It would be greatly appreciated.

Public Sub FindDevInfo()
Dim ContactsFolder As AddressList
Set ContactsFolder = Session.GetGlobalAddressList
Dim oAE As Outlook.AddressEntry
Dim oExUser As Outlook.ExchangeUser
Dim strName As String
Dim i As Integer

i = 2

strName = Range("A2").Text
While strName <> ""
For Each oAE In ContactsFolder.AddressEntries
If oAE.DisplayType = olUser Then
If UCase(oAE.Name) = UCase(strName) Then
Set oExUser = oAE.GetExchangeUser

Range("B" & i).Select
Range("B" & i) = oExUser.Alias
Range("C" & i).Select
Range("C" & i) = oExUser.JobTitle
Range("D" & i).Select
Range("D" & i) = oExUser.Department
Range("E" & i).Select
Range("E" & i) = oExUser.GetExchangeUserManager
Set oExUser = Nothing
Exit For
End If
End If
i = i + 1
strName = Range("A" & i).Text

Set oAE = Nothing
Set ContactsFolder = Nothing
Set oExUser = Nothing

MsgBox "Done"

End Sub