La funzione Locate non è adatta a questo scopo, poichè permette di localizzare (da qui il nome) un record indicando il campo in cui ricercare e il valore che si desidera trovare.

Se la ricerca va a buon fine, Locate restituisce il valore booleano True e il record correntemente puntato è il primo che corrisponde al criterio di ricerca tra quelli contenuti nel DataSet (tabella, query o altro che sia).

Se il valore restituito è False, allora non è stato trovato alcun record che corrisponde ai criteri (campo e valore) specificati.

Tu non hai a disposizione un valore "preciso" ma un valore a virgola mobile che esprime l'ora, pertanto non è nemmeno possibile compiere una simile ricerca se l'ora di inizio e di fine sono valori TTime.