View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.misc
Patrick Riley Patrick Riley is offline
external usenet poster
 
Posts: 34
Default Require input in a cell before saving file

Otto:
I tried this, but it did not work. I placed the code under ThisWorkbook
(incidentally, the code then automatically showed up under each of the 3
worksheets in the workbook).
I am using Excel 2002. ( I have protected the wookbook and each worksheet,
although I think this should make no difference---I tried the code with
protection both off and on).
For "Sht Name" I substited "Sheet1" and when that failed, I tried
substituting "Main" (the name of the worksheet's tab) but that did not work
either.
Any further suggestion?

"Otto Moehrbach" wrote:

Patrick
You will need a Before_Save event macro for this. The following macro
will do it for you. This macro does the following when a SAVE command is
issued by the user:
Checks cell E59 for content.
If the cell is occupied, it will allow the save to continue.
If the cell is empty it will display a message box advising the user that
the file cannot be saved unless cell E59 is filled in. Then it will cancel
the SAVE command.
Note that I assumed your sheet is named "Sht Name" and wrote that name into
the code. Change that as needed.
Note that this is a workbook event macro and must be placed in the workbook
module. In all versions of Excel before 2007, that module can be accessed
by right-clicking on the Excel icon that is immediately to the left of the
word "File" in the menu that runs across the top of the screen, selecting
View Code and pasting this macro into the displayed module. Perhaps someone
can step in here and tell you how to access that module in 2007. "X" out of
the module to return to your worksheet. Come back if you need more. HTH
Otto
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
If IsEmpty(Sheets("Sht Name").Range("E59").Value) Then
MsgBox "Cell E59 of sheet 'Sht Name' must be filled in before
this file can be saved.", 16, "ERROR"
Cancel = True
End If
End Sub
"Patrick Riley" wrote in message
...
I want to require the user to enter his/her name in a cell (E59) before the
user can save the file.
I tried using Data Validation where I specified Text Length between 1 and
40, and left blank the check-box for "Ignore Blank". Nope. I never
programmed in VBA, so I hope there is a simple solution (I might be OK
with
some simple VBA code).
---Pat