在工作中有時需要把設計好的電子表格給其他用戶填寫,表格中的一些單元格為必填項。雖然可以通過設置顏色、批注等方式提醒用戶,但仍有一些用戶會忘記填寫。這時可以用通過下面的宏代碼,當用戶在保存工作簿時進行提醒,如果指定的單元格為空則不能保存工作簿。假如工作簿中“Sheet1”表的E6單元格為必填,步驟如下:
1.按Alt+F11打開VBA編輯器,在“工程”窗口中雙擊“ThisWorkbook”。
2.在代碼窗口中輸入下列代碼:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If Worksheets("Sheet1").Range("e6") = "" Then
MsgBox "Sheet1表的E6單元格不能為空!", , "提醒"
Worksheets("Sheet1").Activate
ActiveSheet.Range("e6").Select
Cancel = True
End If
End Sub
當Sheet1表的E6單元格為空時,無論用哪種方式(如另存為、快捷鍵等)保存工作簿,Excel會彈出一個對話框提醒用戶并跳轉到指定的單元格。