¿Pero no te dije que debías pasar por caja si lo resolvía?

BROMAAAAAAAAAAAA
Me alegro mucho.
De todas formas mira lo que te comenté de que no cierras correctamente el if en el que haces el temporal.MoveFirst . Creo que lo debes cerrar justo en la misma linea donde lo pones y te sobraria el que has puesto dentro del else. O al contrario, quita el if not temporal.EOF ya que con el MoveFirst que has puesto en el else es suficiente.
Un beso