Discussione:
pulsante SalvaRecord non funziona
(troppo vecchio per rispondere)
NSantini
2008-09-27 21:34:48 UTC
Permalink
Saluti ai nottambuli
Sto costruendo una maschera e nella sezione intestazione maschera ho
posizionato i pulsanti: Nuovo record, Salva Record, Chiudi Maschera.
Tutti i pulsanti sono creati con l'autocomposizione e

quello per andare a nuovo record: funziona
DoCmd.GoToRecord , , acNewRec

quello per chiudere la maschera: funziona
DoCmd.Close

quello per salvare il record corrente: non funziona
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70

e mi dà questo messaggio: Comando o azione 'SalvaRecord' non disponibile
anche l'autocomposizione sbaglia? Dove? Come posso rimediare?
Grazie per l'aiuto
NSantini
Geppo
2008-09-27 21:46:25 UTC
Permalink
Post by NSantini
Saluti ai nottambuli
Sto costruendo una maschera e nella sezione intestazione maschera ho
posizionato i pulsanti: Nuovo record, Salva Record, Chiudi Maschera.
Tutti i pulsanti sono creati con l'autocomposizione e
quello per andare a nuovo record: funziona
DoCmd.GoToRecord , , acNewRec
quello per chiudere la maschera: funziona
DoCmd.Close
quello per salvare il record corrente: non funziona
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Ricevi l'errore perchè non c'è nulla da salvare ed hai posto "allowedits" a
"False".

O metti una condizione nel tasto Salve tipo If me.allowedits = true then
esegui il codice per salvare, oppure nella gestione errori intercetti
l'errore:

Err_NomeTuoPulsante_Click:
if err.number = 2046 then
resume Exit_NomeTuopulsante_Click
else
msgbox err.number
resume Exit_NomeTuopulsante_Click
end if
Post by NSantini
e mi dà questo messaggio: Comando o azione 'SalvaRecord' non
disponibile anche l'autocomposizione sbaglia? Dove? Come posso
rimediare? Grazie per l'aiuto
NSantini
--
Ciao
Geppo
NSantini
2008-09-29 07:39:38 UTC
Permalink
Post by Geppo
Post by NSantini
quello per salvare il record corrente: non funziona
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Ricevi l'errore perchè non c'è nulla da salvare ed hai posto "allowedits"
a "False".
O metti una condizione nel tasto Salve tipo If me.allowedits = true then
esegui il codice per salvare, oppure nella gestione errori intercetti
if err.number = 2046 then
resume Exit_NomeTuopulsante_Click
else
msgbox err.number
resume Exit_NomeTuopulsante_Click
end if
Nulla di tutto questo, il comando DoCmd.DoMenuItem acFormBar, acRecordsMenu,
acSaveRecord, , acMenuVer70 funziona solo se in quel momento è visualizzata
la schermata in modalità visualizza/modifica della maschera, infatti solo
in questa schermata è presente la voce di menu Record e all'interno il
comando Salva record (tra l'altro, comando eseguibile anche con
Shift+Invio).
Ammetto che questo comando per come funziona non mi piace, gran parte degli
altri comandi VBA non sono vincolati alla visualizzazione del momento,
altrimenti il programmatore dovrebbe pure preoccuparsi che l'utente abbia
davanti quella specifica schermata.
Grazie per avermi aiutato
NSantini
Geppo
2008-09-29 15:31:43 UTC
Permalink
Post by Geppo
Post by NSantini
quello per salvare il record corrente: non funziona
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70
Ricevi l'errore perchè non c'è nulla da salvare ed hai posto
"allowedits" a "False".
O metti una condizione nel tasto Salve tipo If me.allowedits = true
then esegui il codice per salvare, oppure nella gestione errori
if err.number = 2046 then
resume Exit_NomeTuopulsante_Click
else
msgbox err.number
resume Exit_NomeTuopulsante_Click
end if
Nulla di tutto questo,..............
???
il comando DoCmd.DoMenuItem acFormBar,
acRecordsMenu, acSaveRecord, , acMenuVer70 funziona solo se in quel
momento è visualizzata la schermata in modalità visualizza/modifica
della maschera, infatti solo in questa schermata è presente la voce
di menu Record e all'interno il comando Salva record (tra l'altro,
comando eseguibile anche con Shift+Invio).
E' la prima cosa che ho detto. :-)
Ammetto che questo comando per come funziona non mi piace, gran parte
degli altri comandi VBA non sono vincolati alla visualizzazione del
momento, altrimenti il programmatore dovrebbe pure preoccuparsi che
l'utente abbia davanti quella specifica schermata.
Basta saperlo e gestire il tutto, d'altro canto la gestione errori serve
anche a questo.
Grazie per avermi aiutato
prego
NSantini
--
Ciao
Geppo
Loading...