+ Rispondi al Thread
Pagina 2 di 2 primaprima 12
Visualizzazione dei risultati da 11 a 16 su 16

Discussione: Abilitare/disabilitare campo di una maschera in relazione a casella di controllo

  1. #11
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    16,226
    Quote Originariamente inviato da massi.pg Visualizza il messaggio
    @Alex abbi pazienza , cosa intendi esattamente quando dici
    ?
    Ho aperto la maschera in visualizzazione struttura e ho selezionato il CheckBox e nella finestra proprietà sulla destra ho cliccato su Evento->Prima di aggiornare->Generatore di codice, dopo di che mi compare:

    Private Sub NomeCheckBox_BeforeUpdate(Cancel As Integer)
    End Sub

    Mi puoi dire cosa devo scrivere esattamente in questo codice?

    Grazie mille
    Ti ho evidenziato il Parametro nel codice che hai postato... in rosso.
    Cosa non ti è chiaro se dico uguaglia quel parametro al valore della CheckBox...?
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

  2. #12
    OsvaldoLaviosa non è in linea Topo di biblioteca
    Luogo
    Conversano
    Post
    2,953
    Scusate se mi intrometto col rischio di scrivere ciarlatanerie...ho perso anche un po' il filo del discorso. Da quello che ho capito io del suggerimento di Alex, dovresti scrivere così
    codice:
    Private Sub NomeCheckBox_BeforeUpdate(Cancel As Integer)
    Cancel = Me!NomeCheckBox.Value
    End Sub

  3. #13
    massi.pg non è in linea Novello
    Post
    6
    OsvaldoLaviosa,
    grazie per il tuo contributo ma il codice da te proposto non mi funziona, cioè mi permette di disabilitare il checkbox abilitato in precedenza e mi impedisce di riabilitarlo in seguito, oppure non mi permette di attivare il checkbox se disabilitato in precedenza. Probabilmente ho sbagliato io qualcosa.

    @Alex
    Ti ho evidenziato il Parametro nel codice che hai postato... in rosso.
    Cosa non ti è chiaro se dico uguaglia quel parametro al valore della CheckBox...?
    Non mi è chiaro come scrivere questa cosa, le ho provate tutte ma non ci sono riuscito (come ho premesso sono un principiante di VBA, quello che può sembrare ovvio per un utente esperto per me potrebbe risultare ostrogoto)

    Private Sub NomeCheckBox_BeforeUpdate(Cancel As Integer)
    .....
    End Sub

    Cosa devo scrivere al posto dei puntini?

    Inoltre, sperando di non abusare troppo del vostro tempo, se volessi creare per alcuni checkbox la situazione in precedenza scartata, ossia
    Una volta ABILITATO, ha senso poterlo DISABILITARE...?
    Se la risposta è NO, si deve INIBIRE la possibilità di farlo.
    Se la risposta è SI, si deve pensare cosa fare con i 2 Controlli, vanno Disabilitati solo oppure anche svuotati...?
    consentire che il checkbox precedentemente abilitato venga in seguito disabilitato e disporre che i campi associati vengano disabilitati e anche svuotati, come dovrei fare?
    Grazie

  4. #14
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    16,226
    Se dici che non deve essere riabilitato... è evidente che una volta Flaggato NON SARA' modificabile.
    Se ora dici che questo è un difetto... beh facci capire meglio che strategia vuoi implementare.
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

  5. #15
    massi.pg non è in linea Novello
    Post
    6
    Forse non mi sono espresso bene.. ricapitolo:
    - checkbox non attivato (come da default) e campi associati non abilitati -> vado in visualizzazione struttura della maschera -> vado su evento->prima di aggiornare->generatore di codice-> inserisco il codice suggerito da OsvaldoLaviosa (che a quanto pare è quello giusto, come si intende dall'ultimo commento di @Alex)
    Private Sub NomeCheckBox_BeforeUpdate(Cancel As Integer)
    Cancel = Me!NomeCheckBox.Value
    End Sub
    - dopodiché salvo il codice e ritorno nella visualizzazione maschera della maschera
    - risultato: checkbox non attivabile! Cioè dopo aver applicato il codice suddetto, il checkbox che di default era disattivo non è attivabile, per cui non è il risultato che volevamo.
    Ho fatto una prova anche di fare tutta la procedura sopra descritta partendo da checkbox attivato e il risultato del codice è che mi fa disattivare il checkbox (cioè l'opposto di quanto volevamo) e poi non mi fa più riattivarlo.
    Non so se sono riuscito a spiegarmi. Purtroppo con questi post non riesco ad essere più chiaro di così. Se potessi vi allegherei il mio file access ma non credo si possa fare, o vi allegherei delle immagini di esso ma anche questo non so se si può fare.
    Grazie comunque.

  6. #16
    L'avatar di @Alex
    @Alex non è in linea Very Important Person
    Post
    16,226
    Diciamo che se il CKBox non è abilitato ed i 2 Controllo NON SONO VALORIZZATI devi ovviamente poter ABILITARE...
    Quindi devi aggiungere allo stato della CK anche il Controllo dei 2 Dati NON PRESENTI... forse basta il [Presenza Sintomi] ma poi vedi tu di perfezionare il tutto... comprendendo la logica di quanto suggerito.
    codice:
    Private Sub NomeCheckBox_BeforeUpdate(Cancel As Integer)
        Cancel = Me!NomeCheckBox.Value AND Len(Me![Presenza sintomi].Value & vbNullString)>0
    End Sub
    @Alex
    Il CROSSPOST è VIETATO
    Mirror al vecchio sito WEB(salvare i Demo riassegnando l'estensione (.Zip/.Rar/.Exe in base all'icona...):
    http://mirror.masterdrive.it/alessandrobaraldi/
    Leggi il
    Regolamento del Forum e nel comprenderne la filosofia rispettalo.

+ Rispondi al Thread
Pagina 2 di 2 primaprima 12

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi