*ListBox1.Init code with this .RowSourceType = 3 && SQL .RowSource = 'select anyfieldsyouwant,numberMatchField,PrimaryKey'+; ' from YourTable'+; ' where numberMatchField = thisform.txtUserEntered.Value'+; ' into cursor crsList1' .ColumnCount = 1-To-AsManyAsYouWantToShowFromSQLSelected .ColumnWidths = '50,100,...' && AsManyAsShown endwith *ListBox2.Init code with this .RowSourceType = 3 && SQL .RowSource = 'select anyfieldsyouwant,PrimaryKey'+; ' from YourTable'+; ' where PrimaryKey = crsList1.PrimaryKey'+; ' into cursor crsList2' .ColumnCount = 1-To-AsManyAsYouWantToShowFromSQLSelected .ColumnWidths = '50,100,...' && AsManyAsShown endwith *txtUserEntered InterActiveChange or LostFocus or Valid with thisform.ListBox1 .Requery() .ListIndex = 0 endwith *ListBox1.click or CommandButton.Click with thisform.ListBox2 .Requery() .ListIndex = 1 endwithCetin