Casella combinata restituisce sempre il primo valore della lista

di il
9 risposte

Casella combinata restituisce sempre il primo valore della lista

Buon giorno.

In una maschera ho predisposto due caselle combinate in cascata, la seconda filtrata dalla scelta della prima.

Effettuo la selezione nella prima e correttamente la seconda contiene la lista aggiornata; effettuo la selezione della seconda, ma qualunque elemento io scelga, la cbo mostra sempre il primo e quindi il filtro sulla maschera non si attiva.

Come mai accade ciò? C'è un limite al numero di elementi della lista o da cosa può dipendere?

Grazie.

9 Risposte

  • Re: Casella combinata restituisce sempre il primo valore della lista

    Racconta dettagliatamente:
    - nome proprio maschera
    - nomi propri delle 2 combo
    - tutto il meccanismo che le regola (query/SELECT e/o VBA)
  • Re: Casella combinata restituisce sempre il primo valore della lista

    OsvaldoLaviosa ha scritto:


    - nome proprio maschera
    MasCercaArtista

    OsvaldoLaviosa ha scritto:


    - nomi propri delle 2 combo
    cboArtista e cboNomeArtista

    OsvaldoLaviosa ha scritto:


    - tutto il meccanismo che le regola (query/SELECT e/o VBA)
    cboArtista: SELECT IDTipoArtista, TipoArtista FROM TabTipiArtista ORDER BY TipoArtista;
    Numero colonne: 2
    Larghezza colonne: 0

    cboNomeArtista: SELECT TabArtisti.IDTipoArtista, [Cognome] & " " & [Nome] AS Cantante FROM TabArtisti WHERE (((TabArtisti.IDTipoArtista)=[Maschere]![MasCercaArtista]![cboArtista]) AND (([Cognome] & " " & [Nome])<>"---")) ORDER BY [Cognome] & " " & [Nome];
    Numero colonne: 2
    Larghezza colonne: 0
    Private Sub cboArtista_AfterUpdate()
    cboNomeArtista.Requery
    Me.Requery
    End Sub
    
    Private Sub cboNomeArtista_AfterUpdate()
    Me.Requery
    End Sub
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Donizetti ha scritto:


    Larghezza colonne: 0
    Come fai a vedere il contenuto delle liste combobox con questa impostazione?
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Prima colonna larga 0, ovviamente
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Sono andato a rileggermi questo mio documento dove ho schematizzato la costruzione delle caselle combinate a cascata

    ma non parla di eventi sulle combobox e Requery. Credo che soprattutto il secondo Requery non ha senso di essere eseguito.
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Ho provato a togliere una delle due cbo e cambiato di conseguenza tutta l'impostazione della maschera: via il codice e semplice cbo dove scegliere un nominativo. Niente da fare: seleziono e compare sempre e solo il primo elemento della lista.

    A questo punto credo si tratti di una qualche incompatibilità con la query su cui ho costruito la maschera, ma non saprei come verificarlo.

    Chi può darmi qualche suggerimento?
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Io ho qualche perplessità sulla 2a query. Hai provato ad eseguirla da sola? Ti chiederà di inserire un parametro [Maschere]![MasCercaArtista]![cboArtista], tu inserisci un po' di valori test e controlla se restituisce valori coerenti.
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Prove effettuate: le query restituiscono i record correttamente.

    Ho ulteriormente semplificato: maschera basata sulla TabInterpretazioni, lasciando i campi così come sono; cbo dove selezionare il nome dell'interprete per filtrare i record della tabella. Sempre la stessa cosa: seleziono un nominativo e nella cbo torna il primo in lista. Mah!
  • Re: Casella combinata restituisce sempre il primo valore della lista

    Trovato: nella colonna 1 della query di origine riga della cbo c'era IDTipoArtista e non IDArtista...

    Resta ora il fatto, però, che la maschera non viene filtrata dalla scelta... ma ce la farò!
Devi accedere o registrarti per scrivere nel forum
9 risposte