Create a prompt as a person saves a file

A

ah

I would like to create a prompt that will pop up as a user tries to save a
file and ask them have they filled in a certain cell, say "A2"

Can anybody help?
 
O

Oliver Ferns via OfficeKB.com

Hi,
Go to the ThisWorkbook class module and enter the following code...

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)

If Me.Sheets(1).Range("$A$2").Value = "" Then
MsgBox "You have not entered a value in cell A2 on the first sheet!"
''whatever message you want
Let Cancel = True
End If

End Sub


Hth,
Oli
 
J

John Mansfield

ah,

This VBA routine will work. To add it to your worksheet, go to Tools ->
Macro -> Visual Basic Editor. In the left side structure of the Visual Basic
Editor, look for "ThisWorkbook". Double click on ThisWorkbook and macro
below to the code module. After you add the macro, hit File -> Close. Then,
save your file.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Did you fill in cell A2?"
Style = vbYesNo
Title = "Save Data Prompt"
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then
Exit Sub
Else
Cancel = True
End If
End Sub
 
A

ah

Thanks very much, this is excellent

John Mansfield said:
ah,

This VBA routine will work. To add it to your worksheet, go to Tools ->
Macro -> Visual Basic Editor. In the left side structure of the Visual Basic
Editor, look for "ThisWorkbook". Double click on ThisWorkbook and macro
below to the code module. After you add the macro, hit File -> Close. Then,
save your file.

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Did you fill in cell A2?"
Style = vbYesNo
Title = "Save Data Prompt"
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then
Exit Sub
Else
Cancel = True
End If
End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top