VBA n00b :\

  • Thread starter Thread starter skattyd
  • Start date Start date
S

skattyd

i'm just starting out with VBA i have to write a code to search throug
a database in excel and highlight people in red that you put into th
input box. How can i make it if the persons name is not found come u
with a message box stating so and if it is found to just end. here i
my code so for i just cant figure it out please help!!


Sub SuperHighlight()
Dim strName As String

strName = InputBox("Type in the name of the sales representativ
you wish to be highlighted")

Application.Goto Reference:="FirstDate"
Do Until ActiveCell = ""
ActiveCell.Range("A1:D1").Select
If ActiveCell.Offset(0, 1) = strName Then
Selection.Font.ColorIndex = 3
End If
ActiveCell.Offset(1, 0).Select

Loop

If strName = "" Then MsgBox "User Not Found Re-Type Name"


End Su
 
Not how I would do it, but using your code, this is one way

Sub SuperHighlight()
Dim strName As String
Dim fFound as boolean

strName = InputBox("Type in the name of the sales representative
you wish to be highlighted")

Application.Goto Reference:="FirstDate"
Do Until ActiveCell = ""
ActiveCell.Range("A1:D1").Select
If ActiveCell.Offset(0, 1) = strName Then
Selection.Font.ColorIndex = 3
fFound = "True"
End If
ActiveCell.Offset(1, 0).Select

Loop

If Not fFound Then MsgBox strName & " not found"
If strName = "" Then MsgBox "User Not Found Re-Type Name"


End Sub


--

HTH

RP
(remove nothere from the email address if mailing direct)
 
You need to set a flag when you have found a name

blnFoundName = false
Sub SuperHighlight()
Dim strName As String
Dim blnFoundName as boolean

blnFoundName = false
strName = InputBox("Type in the name of the sales representative
you wish to be highlighted")

Application.Goto Reference:="FirstDate"
Do Until ActiveCell = "" or blnFoundName = true
ActiveCell.Range("A1:D1").Select
If ActiveCell.Offset(0, 1) = strName Then
Selection.Font.ColorIndex = 3
blnFoundName = true
End If
ActiveCell.Offset(1, 0).Select

Loop
if blnFoundName = false then
msgbox strName & " not Found"
endif

If strName = "" Then MsgBox "User Not Found Re-Type Name"


End Sub


:> Sub SuperHighlight()
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top