If you have multiple cells on the same worksheet that must be filled in, maybe
you could use something like:
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim myRng As Range
Dim myCell As Range
Dim myMsg As String
Set myRng = Me.Worksheets("competency").Range("C3,d19")
myMsg = ""
For Each myCell In myRng.Cells
If Trim(myCell.Value) = "" Then
myMsg = myMsg & ", " & myCell.Address(0, 0)
End If
Next myCell
If myMsg < "" Then
myMsg = "Please Fill: " & Mid(myMsg, 3)
MsgBox myMsg
Cancel = True
End If
End Sub
=====
And just a thought, wouldn't this be better in the workbook_beforesave event?
If I open and want to close without saving, why should I have to fill in those
cells?
"jmorgs <" wrote:
The problem is that if I give it another name, like sheet_beforeclose,
or book_beforeclose the code won't work, but if I name is
workbook_beforeclose, because I have another cell with this exact same
code, I get this ambiguous error!
HELP!
---
Message posted from http://www.ExcelForum.com/
--
Dave Peterson