Bueno viendo lo de Evitar repetir letras, no puedo mas que pasar por aqui mi version de ese codigo solo que aplicada a una ListBox.

PUBLIC SUB Button1_Click()

DIM ask AS String

ask = TextArea1.Text

IF ListBox1.Find(ask) > -1 THEN

Message.Info("Esta pregunta ya esta añadida")

ELSE

ListBox1.Add(ask)
TextArea1.Clear

ENDIF
END


Como vereis carga los datos en una variable y luego la comprueba en la ListBox, si esta manda un mensaje y si no esta la añade y vacia la TextArea.
Y para evitaros a algunos modificaciones aqui va uno sin variables:

PUBLIC SUB Button1_Click()

IF ListBox1.Find(TextArea1.Text) > -1 THEN

Message.Info("Esta pregunta ya esta añadida")

ELSE

ListBox1.Add(TextArea1.Text)
TextArea1.Clear

ENDIF
END