Newsgroup: it.comp.appl.access
Titolo: maschera di avviso

Come sempre grazie a tutti per la collaborazione.
Ho un pulsante che genera un codice vba, vorrei che cliccando sul pulsante 
prima di eseguire il codice allegato esca una maschera di avviso " Sei 
sicuro di voler procedere" Si ? o No ?
Grazie. 

 Grazie.
-- 
Ciao
Geppo 

"Geppo" <c...@tin.it.invalid> schrieb im Newsbeitrag 
news:Hxr5m.33855$1s6....@twister2.libero.it...

Ho fatto come da te suggerito ma non funziona ,  riporto un esempio anche se 
il codice dove devo mettere l�avviso � molto pi� lungo.
Private Sub Comando47_Click()
if msgbox("Sei sicuro di voler procedere?", vbcritical + vbyesno) = vbyes
then
On Error GoTo Err_Comando47_Click
    DoCmd.Close
Exit_Comando47_Click:
    Exit Sub
Err_Comando47_Click:
    MsgBox Err.Description
    Resume Exit_Comando47_Click
End If
End Sub
Grazie 

 - Mostra testo citato -
devi inserire l'azione dopo il then
leggendo il tuo codice, penso che tu voglia chiudere qualche cosa,
supponendo che sia una form
if msgbox("Sei sicuro di voler procedere?", vbcritical + vbyesno) =
vbyes then
Docmd.close acForm, "NomeForm" 'oppure Docmd.Close acForm, Me.name
end if

 Grazie
-- 
Ciao
Geppo 

"Geppo" <c...@tin.it.invalid> schrieb im Newsbeitrag 
news:q9K5m.34360$1s6....@twister2.libero.it...

 Purtroppo mi da errore, gi� appena copio e incollo il rigo del codice  if 
msgbox............................... lo marca di rosso comunque questo � 
tutto il codice completo
Private Sub Comando53_Click()
On Error GoTo Err_Comando53_Click
if msgbox("Sei sicuro di voler procedere?", vbcritical + vbyesno) = vbyes
then
DoCmd.Close
End If
Exit_Comando53_Click:
    Exit Sub
Err_Comando53_Click:
    MsgBox Err.Description
    Resume Exit_Comando53_Click
End Sub
Devo forse fare     ulcos�altro oltre a scrivere il codice sul pulsante 
sull�evento click?
Grazie. 

 - Mostra testo citato -
Il codice è corretto devi solo scrivere il then sulla stessa riga
dell'if
if msgbox("Sei sicuro di voler procedere?", vbcritical + vbyesno) =
vbyes then
Docmd.Close

Perfetto cosi funziona!!! per� se devo metterlo su un codice pi� lungo come 
quello sotto, cosa devo fare?
Private Sub Comando36_Click()
Dim Wrd As Word.Application, Doc As Word.Document
Dim rst As DAO.Recordset
Dim Modello As String, nomefile As String, i As Integer
Dim Record As String, SQL As String
Dim Tbl As String * 1
Dim TotRiga As Currency, Totale As Currency
Dim ReplSel As Boolean
    'Trova il nome, completo di percorso, del modello word
    '("Lettera.dot" nella stessa cartella del database)
    Modello = CurrentDb.Name
    Modello = Left(Modello, Len(Modello) - Len(Dir(Modello))) & 
"copertura.dot"
    On Error Resume Next 'gestione errori step by step
    'cerca un'istanza di Word gi� aperta
    Set Wrd = GetObject(, "Word.Application")
    If Err.Number = 429 Then
        'se c'� stato un errore � perch� Word non era gi� aperto:
        'aprilo adesso
        Set Wrd = CreateObject("Word.Application")
    End If
    On Error GoTo 0 'ripristina la segnalazione degli errori
    'rendi visibile la finestra di Word:
    Wrd.Visible = True
    'attiva Word e portalo in primo piano:
    Wrd.Activate
    'abilita l'opzione "Sostituisci la selezione". Se non fosse
    'attiva, i campi modulo rimarrebbero all'interno del testo.
    ReplSel = Wrd.Options.ReplaceSelection
    Wrd.Options.ReplaceSelection = True
    'Apri un nuovo documento basato sul modello:
    Set Doc = Wrd.Documents.Add(Modello)
    'attivalo e portalo in primo piano:
    Doc.Activate
pausa
    'seleziona il bookmark del primo campo ufficio :
    Doc.Bookmarks("ufficio").Select
pausa
    'e sovrascrivilo con il contenuto dei campi
    'ufficio:
    Wrd.Selection.TypeText Me.CasellaCombinata38
pausa
    'seleziona il bookmark del primo campo numero :
    Doc.Bookmarks("numero").Select
pausa
    'e sovrascrivilo con il contenuto dei campi
    'numero:
    Wrd.Selection.TypeText Me.Numero
pausa
    'seleziona il bookmark del primo campo data :
    Doc.Bookmarks("data").Select
    'ripristina il valore originario dell'opzione
    '"Sostituisci la selezione"
    Wrd.Options.ReplaceSelection = ReplSel
    'avvisa l'utente che l'esportazione � terminata
    Wrd.Application.WordBasic.MsgBox "Esportazione terminata", "Esportazione 
dati da Access"
    ''per SALVARE il documento come Lettera_<IDcliente>_<progressivo>.doc:
    nomefile = Left(Modello, Len(Modello) - 4) & "_" & Format(Me.Numero) & 
"_"
    Doc.SaveAs nomefile & Format("2009") & ".doc"
    Me!nomefile = nomefile & Format("2009") & ".doc"
    Me.Refresh '<-- se vuoi scrivere subito le modifiche al record
End Sub 

Grazie ho risolto. Basta solo mettere sullo stesso rigo il codice
................
if msgbox("Sei sicuro di voler procedere?", vbcritical + vbyesno) = vbyes 
then
..................
Istruzione da eseguire
.......................
End if
End sub
Grazie tante.