LinkBack Thread Tools Search this Thread Display Modes
Prev Previous Post   Next Post Next
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,119
Default Find next

Sorry about taking so long to get back to you... Work and all... The person
has to fill out a text box of whom to search for... When this text box looses
focus or the button is pressed run this code. The first item (0) in the array
is what you want to display in your first form. After that when you spawn the
second form you want to display items 1 through ??? If it was me doing the
code I would probably only use 1 form (easier for the users to keep track
of). When search is pressed I would (if there was more than 1 item in the
array) change the button caption to Search Next. When the Search Next was
pressed I would display the next item in the list...
--
HTH...

Jim Thomlinson


"Frank" wrote:

Hi Jim,

Thanks for your answer. I get your point and i put your code in a module and
try to run this but i need some more help..
I didn't change the code of searchbutton (is that correct?) and now i need
to know what code i need to put under the findnext button on the second
userform.
Now i don't get any result...
Hope you can help me some more.

"Jim Thomlinson" schreef:

This code will return an array of the people you are looking for. This code
needs to be placed in a module. If the no matches are found then the function
returns nothing.

Public Type Person
FirstName As String
LastName As String
Phone As String
Mobile As String
Location As String
End Type

Sub test()
Dim aryTest() As Person

aryTest = People(Sheets("Sheet1").Range("A1:A20"), "Dave")
End Sub



Public Function People(ByVal Target As Range, ByVal ToFind As String) As
Person()
Dim rngFound As Range
Dim rngFirst As Range
Dim aryResult() As Person
Dim lngCounter As Long

Set rngFound = Target.Find(ToFind, , xlValues)
If Not rngFound Is Nothing Then

ReDim Preserve aryResult(lngCounter)
aryResult(lngCounter).FirstName = rngFound.Value
aryResult(lngCounter).LastName = rngFound.Offset(0, 1).Value
aryResult(lngCounter).Phone = rngFound.Offset(0, 2).Value
aryResult(lngCounter).Mobile = rngFound.Offset(0, 3).Value
aryResult(lngCounter).Location = rngFound.Offset(0, 4).Value
lngCounter = lngCounter + 1
Set rngFirst = rngFound
Set rngFound = Target.FindNext(rngFound)
Do While rngFound.Address < rngFirst.Address
ReDim Preserve aryResult(lngCounter)
aryResult(lngCounter).FirstName = rngFound.Value
aryResult(lngCounter).LastName = rngFound.Offset(0, 1).Value
aryResult(lngCounter).Phone = rngFound.Offset(0, 2).Value
aryResult(lngCounter).Mobile = rngFound.Offset(0, 3).Value
aryResult(lngCounter).Location = rngFound.Offset(0, 4).Value
lngCounter = lngCounter + 1
Set rngFound = Target.FindNext(rngFound)
Loop
People = aryResult
End If
End Function

--
HTH...

Jim Thomlinson


"Frank" wrote:

Hi,

I have created an option to search for a name in a userform and after you
press search a new userform opens which shows the result. So far it works
fine. On the second userform i have a button called Next result. I want to
show the next result but i can't figure it out. Can some one have a look at
this?

The code used for the search option:

Private Sub Zoekbtn_Click()
If Searchform.firstname = "" Then

msgbox "Enter a value"
Else
Call firstnamesearch
Resultform.Show
End If
End Sub

Private Sub firstnamesearch()

With Worksheets("Employees").Range("a2:a500")
Set f = .Find(Firstname, LookIn:=xlValues)
If Not c Is Nothing Then 'Firstname found .....
' Get data from this row i.e. containing firstname
r = f.Row
Resultform.Firstname = Cells(r, "A")
Resultform.Lastname = Cells(r, "B")
Resultform.Phonenumber = Cells(r, "C")
Resultform.Mobile = Cells(r, "D")
Resultform.Location = Cells(r, "E")


Else
msgbox "No data found"

End If
End With
End Sub

 
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Find First Non blank cell than find column header and return that value Silver Rose Excel Worksheet Functions 10 April 30th 07 05:56 PM
Despite data existing in Excel 2002 spreadsheet Find doesn't find AnnieB Excel Discussion (Misc queries) 1 June 16th 06 02:15 AM
find and delete duplicate entries in two columns or find and prin. campare 2 columns of numbers-find unique Excel Programming 1 November 24th 04 04:09 PM
find and delete text, find a 10-digit number and put it in a textbox Paul Excel Programming 3 November 16th 04 04:21 PM
backwards find function to find character in a string of text Ashleigh K. Excel Programming 1 January 14th 04 04:36 PM


All times are GMT +1. The time now is 10:34 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"