Newsgroup: it.comp.appl.access
Titolo: Cambiare colore testo su casella di testo maschera

Salve,
su una maschera, per cercare un valore desiderato contenuto tra i molti campi di una query sulla quale la maschera è costruita, ho una casella di testo con questo codice:
 
Private Sub Comando14_Click()
Dim strsearch As String
Dim strText As String
strText = Me.CasellaDiTesto.Value
strsearch = "SELECT * from NomeQuery where (NomeCampo like """ & strText & "*"")"
Me.RecordSource = strsearch
End Sub
 
Vorrei poter evidenziare, facendolo diventare ad es. rosso, il contenuto (i caratteri) della casella di testo dove viene restituito il valore cercato.
 
Grazie.
 
Daniele


me!casellaDiTesto.ForeColor=vbRed
 


Ciao,
per questo c'è la formattazione condizionale, se fai una ricerca ne trovi a bizzeffe di esempi.
Vladimiro


Ciao,
grazie al tuo consiglio ho scoperto il wizard in access per la formattazione condizionale. Avrei quindi risolto, applicando l'espressione alle caselle di testo della maschera le quali dovevano cambiare colore testo, in questo modo: [CasellaControlloA]=[CasellaControlloB] e poi dicendo colore testo rosso.
 
In questo modo devo però digitare l'intero valore della CasellaControlloA perchè la CasellaControlloB diventi rossa; mi piacerebbe invece ottenere l'effetto, anche anche digitando del testo parziale.
Inoltre avrei voluto vedere il codice VBA :)
 
Grazie anche a te Mantro ma devono esserci le condizioni e non saprei come applicare il tuo esempio.
 
Grazie.
Daniele

 Inoltre avrei voluto vedere il codice VBA :)
magari se fai qualche esempio più concreto!
Vladimiro


In una maschera ho una casella di testo non associata (ne ho di più ma l'esempio va bene con una), di nome - facendo l'esempio con il mio DB, species. 
In questa casella di testo posso digitare dei valori (nomi di insetti), per trovare l'insetto desiderato in una combo chiamata species. Uso questo codice:
 
Dim strsearch As String
Dim strText As String
strText = Me.TxtSpeciesSearch.Value
strsearch = "SELECT * from Query where (Species like """ & strText & "*"")"
Me.RecordSource = strsearch
 
Grazie al codice, nella casella di testo ricerca, posso digitare anche il nome dell'insetto in maniera parziale per trovare l'insetto nella combo, ad es. "farf" o "far" per trovare "farfalla".
Invece, con l'espressione che ho inserito nel wizard della formattazione condizionale che è, :  [CasellaTesto]=[Combo] -> diventa rossa - se digito il nome parzialmente ottengo il risultato di ricerca ma ovviamente non diventa rosso.
Vorrei sapere qual'è l'espressione esatta da inserire al posto di - [CasellaTesto]=[Combo] -> diventa rossa - per ottenere il risultato anche inserendo il nome parzialmente. Insomma, vorrei sapere dove mettere l'asterisco.
 
Spero di esser stato chiaro.
 
Daniele

 Vorrei sapere qual'è l'espressione esatta da inserire al posto di - [CasellaTesto]=[Combo] -> diventa rossa - per ottenere il risultato anche inserendo il nome parzialmente. Insomma, vorrei sapere dove mettere l'asterisco.
 
Ciao,
puoi fare così.
1)Creati una casella di testo nascosta e non associata chiamata Verifica.
 
2)Inserisci la formattazione condizionale nella casella di testo Species:
L'espressione è InStr([Verifica];1)
 
3)Modifica parzialmente la routine di ricerca in modo tale da evitare          l'errore se pigi il tasto senza aver inserito la stringa di ricerca in TxtSpeciesSearch:
 
Dim strsearch As String
Dim strText As String
If IsNull(Me.TxtSpeciesSearch) Then
Beep
Exit Sub
End If
Me.Verifica = Null
strText = Me.TxtSpeciesSearch.Value
strsearch = "SELECT * from Query7 where (Species like """ & strText & "*"") or (Subspecies like """ & strText & "*"")"
Me.RecordSource = strsearch
Me.Verifica = 1 
 
Vladimiro
 


Grande Vladimiro, funziona !
C'era solo un piccolo particolare che ho comunque risolto. 
 
Con il tuo codice il testo cercato diventa rosso però il colore rosso non va più via perchè nella casella di testo nascosta verifica rimane il valore 1
Siccome nella maschera c'era già un tasto reset che mi cancella il testo nella casella dove inserisco il testo da cercare, con questo codice:
 
Private Sub Comando90_Click()
Me.TxtSpeciesSearch.Value = ""
End Sub
 
non ho fatto altro che aggiungere questo:
Me.Verifica = 0
 
e così quando premo il tasto reset, oltre a cancellare il testo cercato, mi cancella anche il colore rosso. Direi che adesso è perfetto.
Grazieeeee.
Daniele