Condividi tramite

Come nascondere un campo e renderlo visibile alla selezione di un'opzione di un dropdown

Anonimo
2019-08-25T17:01:20+00:00

Ciao a tutti,

ho creato una tabella che contiene diversi campi non visibili e che vorrei diventassero visibili dopo la selezione di una voce specifica di un dropdown. Faccio un esempio semplice con due voci soltanto di dropdown: "telefono" e "email". Quindi se seleziono l'opzione "telefono" vorrei che il campo telefono diventasse visibile e il campo email restasse invisibile, invece se seleziono l'opzione "email" vorrei che il campo telefono diventasse nascosto e il campo email visibile. Potete aiutarmi?

Grazie in anticipo per il tempo che potrete dedicare.

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2019-09-06T11:29:43+00:00

ciao Enzo,

provo ad indicarti la strada corrette in modo un po' piu' diretto  :

dopo aggiornamento della combo preferenze, invoca :

With Me

    .orario_insegn.Visible = CBool(.preferenza.Value = 1 Or .preferenza.Value = 3 Or .preferenza = 4)

    .giorno_insegn.Visible = CBool(.preferenza.Value = 2 Or .preferenza.Value = 3 Or .preferenza = 4)

    .sedescolastica.Visible = CBool(.preferenza.Value = 4)

End With

cosi' ottieni lo stesso, ma con l'operatore not l'esecuzione dovrebbe essere piu' lenta (appena posso verifico questa ipotesi) :

With Me

    .orario_insegn.Visible = CBool(Not (.preferenza.Value = 2 Or .preferenza.Value = 5))

    .giorno_insegn.Visible = CBool(Not (.preferenza.Value = 1 Or .preferenza.Value = 5))

    .sedescolastica.Visible = CBool(.preferenza.Value = 4)

End With

Facci sapere.

Ciao, Sandro.

La risposta è stata utile?

0 commenti Nessun commento

13 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2019-08-29T18:52:32+00:00

    Ciao Sandro,

    grazie per il link. Mi ha aiutato a trovare l'errore: avevo dato il nome sbagliato ai controlli Telefono e Email.

    si potrebbe pensare ad un loop e ad una funzione UDF specifica, ma servono più dettagli.

    Intanto guarda la demo, poi in caso vediamo il da farsi.

    La procedura presente nella demo è stata molto semplice da imparare. Applicarla a un numero di campi superiore a 6 potrebbe avere conseguenze non desiderate? Se non ci fossero effetti negativi, potrei continuare ad applicare la procedura imparata e vista nella demo?

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2019-08-26T20:06:21+00:00

    ciao Enzo,

    sempre nella demo di cui al link precedente cioè QUESTO, controlla la maschera1.

    […]

    Nel database in cui dovrò applicare controlli nascosti e la loro comparsa in base alla selezione nel dropdown della relativa voce variano tra circa 6 e un massimo di forse 10 controlli. Il numero esatto cambia da form a form in cui dovrò applicarli.

    [...]

    si potrebbe pensare ad un loop e ad una funzione UDF specifica, ma servono più dettagli.

    Intanto guarda la demo, poi in caso vediamo il da farsi.

    […]

    Grazie ancora,

    Enzo

    [...]

    prego.

    Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2019-08-26T19:27:45+00:00

    Ciao Sandro,

    grazie mille per la risposta immediata. Non sono riuscito a far riapparire i campi dopo la selezione dell’opzione di dropdown perché credo di aver se eseguito non correttamente le tue istruzioni. Provo a spiegare in modo più dettagliato possibile cosa ho fatto.

    1. Ho una tabella studente e nella relativa form ho inserito una cbo il cui nome è cboScelta
    2. All’interno della form studente in visualizzazione struttura ho selezionato cboScelta e in proprietà nel tab Evento nella riga Dopo aggiornamento ho cliccato il pulsante con i tre puntini e complessivamente il codice relativo a questa parte attualmente è:

    Private Sub cboScelta_AfterUpdate()

    With Me

    .txtTelefono.Visible = CBool(.cboScelta.Value = "telefono")

    .txtMail.Visible = CBool(.cboScelta.Value = "email")

    End With

                End Sub

    1. Sempre in visualizzazione struttura ho selezionato Telefono e in Proprietà ho dato come nome etichetta: Telefono. Nel tab Formato nella riga Visibile ho selezionato: No. La stessa procedura descritta per Telefono , l’ho ripetuta anche per Mail.
    2. Attualmente dopo aver richiamato il form, sia Telefono che Mail non appaiono (com’è giusto che sia), ma quando nel dropdown seleziono l’opzione telefono oppure email, non appare niente.

    Nel database in cui dovrò applicare controlli nascosti e la loro comparsa in base alla selezione nel dropdown della relativa voce variano tra circa 6 e un massimo di forse 10 controlli. Il numero esatto cambia da form a form in cui dovrò applicarli.

    Grazie ancora,

    Enzo

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2019-08-25T18:26:19+00:00

    ciao Gapper,

    controlli proprio di forms e reports, campi nelle tabelle e queries, quindi rendi non visibili i controlli e non i campi.

    Prova come segue su evento dopo aggiornamento della combo tramite la quale effettui la selezione :

    Private Sub cboDati_AfterUpdate()

    With Me

        .txtTelefono.Visible = CBool(.cboDati.Value = "telefono")

        .txtMail.Visible = CBool(.cboDati.Value = "email")

    End With

    End Sub

    da capire come eventualmente migliorare quanto sopra esposto nel caso di molti controllil da gestire in tal modo.

    Info che manca, ma per ora limitiamoci a questo.

    HTH.

    Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento