Ciao a tutti,
in una maschera su un progetto in access alla sua chiusura devo verificare che una combobox abbia un valore maggiore di 0 se in una tabella del db e' presente una riga. Fatta questa verifica devo chiudere la maschera se la riga non e' presente, altrimenti dico all'utente di scegliere un valore dalla combobox. Inoltre ho un pulsante di chiusura che mi serve per chiudere la maschera e nel quale dovrei fare la stessa cosa.
Il codice che uso e' questo
pulsante chiudi:
prima usavo il docmd perché non avevo la verifica
evento unload della maschera:codice:Private Sub bChiudiAnomalie_Click() 'DoCmd.Close Call Form_Unload(False) End Sub
non sono riuscito a fare quello che mi serve perché mi da errore sulla chiusura quando la combo e' vuota e non ci sono righe nella tabella. L'errore che mi da e':codice:Private Sub Form_Unload(Cancel As Integer) 'verifico che sia impostata l'agenzia se e' presente almeno un anomalia nell'elenco Dim SQL As String Dim RS As DAO.Recordset Dim db As DAO.Database Set db = CurrentDb SQL = "SELECT anomalie.idAnomalia FROM anomalie WHERE anomalie.idpratica=" & Me.idPr Set RS = db.OpenRecordset(SQL) If RS.RecordCount > 0 Then 'codagen e' la combobox che deve essere valorizzata If Me.codAgen.Value = 0 Then MsgBox "Attenzione l'inserimento del PO e' obbligatorio, selezionarne uno dall'elenco" Cancel = True Else 'Cancel = False 'Unload Me 'DoEvents 'DoCmd.Close acForm, Me.Name 'Unload Form_anomalie 'qui ERRORE End If End If RS.Close Set RS = Nothing End Sub
errore di Runtime 2501
l'azione close e' stata annullata
si puo fare quel che chiedo? grazie

Rispondi quotando