*Employee listbox .Rowsource = "select first-(', '+last) as empname, empid "+; "from employee "+; "where empid in "+; "(select emp_id from Linker where compid=crsComp.compId) "+; "into cursor crsEmp"All you need is to find correct SQLs first :) Above SQL might be one with joins too. BTW not needed here but you're even free to use form objects in your expressions. ie :
.Rowsource = "select first-(', '+last) as empname, empid "+; "from employee "+; "where empid = thisform.txtEmpId.Value and "+; ...With restriction on employee probably you'd need this code in company listbox.valid (or interactivechange but I prefer valid for performance reasons) :
*complist.valid with this.parent.lstEmp luEmpId = crsEmp.EmpID && Save current empid .Requery && Requery listbox hence new crsEmp cursor select crsEmp locate for empId = luEmpId && Does previous selected exists in this set ? .ListIndex = iif(eof(),0,recno()) && If not clear selection else select again endwith *Also adjust Jobs listbox...Cetin