Domanda Casella di controllo

Ose

Utente junior
25 Febbraio 2020
21
1
Castano Primo
excel 2007
1
Rieccomi, altro problema.
Avrei la necessità di capire come utilizzare una casella di controllo (si/no), però mi servirebbe impostare il valore "no" di default ed al momento che io seleziono, quindi valore "si", mi appare un valore di riferimento (prememorizzato in una tabella).
Ho cercato nel forum ma non ho trovato nessun aiuto.

Grazie a chi mi aiuta
 

alfrimpa

VBA Expert
Supermoderatore
Expert
18 Dicembre 2015
24.179
1.845
66
Napoli
2019 Pro Plus
569
Ciao Ose @Ose

Dalle scarse reminiscenze che ho su Access mi sembra di poter dire che potresti inserire nell'evento Su caricamento della maschera le istruzioni per porre a False (No) il valore della Checkbox

Poi sfruttando l'evento Click di quest'ultima visualizzare qualcosa o fare altro.

Il codice potrebbe essere qualcosa del genere

Visual Basic:
Private Sub Form_Load()
Me.CasellaControllo0.Value = False
End Sub
Visual Basic:
Private Sub CasellaControllo0_Click()
MsgBox "Ciao"  '<==== Qui puoi mettere le istruzioni che desideri
End Sub
 
Ultima modifica:

alfrimpa

VBA Expert
Supermoderatore
Expert
18 Dicembre 2015
24.179
1.845
66
Napoli
2019 Pro Plus
569
Scusa ma non hai inserito il codice che ti avevo suggerito sull'evento Su caricamento della maschera Clienti

Cosa intendevi fare con questo codice?

Visual Basic:
Private Sub cbocontrollo1_Click()
txt_valorecontrollo1 = cbocontrollo1.Value
End Sub
Cosa volevi che comparisse nella textbox txtvalorecontrollo1 cliccando su cbocontrollo1?
 

alfrimpa

VBA Expert
Supermoderatore
Expert
18 Dicembre 2015
24.179
1.845
66
Napoli
2019 Pro Plus
569
Ciao Ose @Ose

Pur essendo passati anni da quando non mettevo mani su Access qualcosa forse son riuscito a tirar fuori.

Nella tabella Controllo1 ci deve essere sempre selezionato un unico record nella casella di controllo

Devi costruire una query sulla tabella Controllo1 inserendo nella QBE valore_controllo1 e controllo1 e su quest'ultimo inserisci Vero come criterio e deseleziona la casella Mostra salva e chiudi.

Sulla Maschera Offerte devi associare al controllo cbocontrollo1 questo codice

Visual Basic:
Private Sub cbocontrollo1_Click()
Dim db As Database
Dim rsquery As Recordset
Dim val As Integer
Set db = CurrentDb
Set rsquery = db.OpenRecordset("Query1", dbOpenDynaset)
Me.txt_valorecontrollo1 = rsquery!valore_controllo1
End Sub
Ovviamente devi associare all'evento Su caricamento della maschera il codice che ti ho già dato.
 
Ultima modifica:

CarlettoFed

Utente abituale
19 Luglio 2017
178
18
Narni
2003
9
Per assegnare un valore di default ad un controllo Casella di controllo deve essere impostata la proprietà Valore predefinito a Falso o a Vero, senza il segno uguale.
Per ssegnare un valore ad un'altro controllo a seconda o meno del della spunta nella Casella di controllo il codice è il seguente
Visual Basic:
Private Sub chkControllo_Click()
    If Me.chkControllo Then
        Me.txt_valorecontrollo1 = Null
    Else
        Me.txt_valorecontrollo1 = "valore da essegnare"
    End If
End Sub
Nella struttura, delle tabelle, che hai creato non ha senso la tabella controllo1, così come impostata.
 
  • Like
Reactions: alfrimpa

Ose

Utente junior
25 Febbraio 2020
21
1
Castano Primo
excel 2007
1
No, però dovresti spiegare in modo chiaro che cosa vorresti fare con questa casella di controllo.
Allora praticamente vorrei utilizzare una una casella di controllo dove io quando la seleziono mi deve aggiungere il valore della casella alla somma di tutti gli altri valori presenti nella stessa offerta.

esempio

pizza margherita €. 5,00
pizza marinara €. 4,00

quindi avrò un campo di testo che sarà : TOTALE ORDINE €. 9,00

a questo aggiungo una casella di controllo che potrebbe essere

consegna urgente : se la sbarro, quindi "SI" mi deve aggiungere un valore di es. €.1,00

quindi TOTALE ORDINE diventa €. 10,00

Ma il valore della consegna urgente lo devo impostare in una tabella a parte per devo aver la possibilità di modificarlo agilmente.

Spero di essere stato abbastanza chiaro.

Grazie ancora
 

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!