Dopo prove e riprove ho finalmente trovato la soluzione:
combobox1.Text = combobox1[contatore].Text
dove contatore è la variabile che contiene il numero riga contenente il testo cercato.
Ho notato comunque che quando vado a cliccare nella combo, non mi trovo la lista posizionata sul testo che ho puntato, ma parte dal fondo.
Questo puo essere molto scomodo se desidero ritornare alla posizione sulla quale ho puntato.
Avete idee su come si fa?
Ho provato a fare come hai detto
.Index = 10
.setfocus
.select
ma quando apro il menù pull-down mi ritrovo comunque sull'ultima riga anzichè su quella attiva nella combo.
Se volessi scegliere la riga prima o dopo quella attiva, dovrei scorrere tutta la lista verso l'alto
fino ad arrivare a quella attiva. Questo è il problema.
Il problema del combo è che l'index da' il riferimento alla posizione del valore selezionato, ma non dice nulla riguardo un eventuale id del valore selezionato. Mi spiego meglio: immaginiamo di avere una tabella di nomi di attività sportive costruita da un id (campo seriale autoincrement) e da un campo testo...come si fa a recuperare l'id del valore testo selezionato, che appare nel combo (il valore SportCorrente)? Io uso questa routine:
'ArraySports è un recordset della tabella
PUBLIC SUB cboSPORTS_Click()
ArraySports.MoveFirst
ArraySports.MoveTo(cboSPORTS.Index)
SportCorrente = ArraySports!id
END