simo27 ha scritto:
No se è già fleggato no...solo su un nuovo inserimento nella maschera.
Se fleggo la spunta allora mi si deve aprire in automatico un'altra maschera che poi andro ad aggiornare..
Quindi escludi che un record già inserito, non spuntato, possa essere modificato in Sì o se anche modificato in Sì non ti interessa che compaia quella maschera?
Fatte tutte le tue considerazioni, puoi scrivere questo:
Private Sub CasellaControllo_AfterUpdate()
If Me.NewRecord And Me!CasellaControllo.Value = True Then
DoCmd.OpenForm "TuaMaschera", acNormal, , , , acDialog
End If
End Sub
Per scrivere questo devi andare nelle proprietà del controllo, selezionare la scheda Eventi, fare clic sul pulsante con i 3 punti che compare quando selezioni l'evento Dopo Aggiornamento e in Scegli Generatore scegli Generatore di Codice.
Ovviamente invece di CasellaControllo e TuaMaschera dovrai indicare i nomi veri.
Il parametro acDialog farà in modo che non si possa fare altro se non agire nella maschera che si apre, fino alla sua chiusura. Il record è ancora in inserimento, non è già stato inserito, quindi se premi ESC una volta tornata alla maschera "di partenza", il record non viene salvato ma l'annullamente non riguarda quello che hai fatto nella maschera che hai appena chiuso.
Questo si limita a rispondere alla tua richiesta, non entro nel merito della correttezza di questa operazione e con l'auspicio che sia l'inizio dell'apprendimento di vba.
In base a quale criterio poi si dovrà aprire questa maschera? è associata a qualcosa? quello che scrivi come sarà collegato al record che stai inserendo? Mah.