certo ricordati però che poiché hai un ciclo quando valorizzi una variabile alla successiva iterazione la dovrai annullare altrimenti ti manterrà il valore che gli hai assegnato! quindi correggi il controllo con:

if F categoria = trim ( RS("titolo") ) then
Selected=" SELECTED"
else
Selected=""
end if

in questo modo la variabile sarà valorizzata SOLO quando il controllo sarà vero! e non da quel punto in poi come accadrebbe se nn metti l'else!