在工作中有時(shí)需要把設(shè)計(jì)好的電子表格給其他用戶填寫(xiě),表格中的一些單元格為必填項(xiàng)。雖然可以通過(guò)設(shè)置顏色、批注等方式提醒用戶,但仍有一些用戶會(huì)忘記填寫(xiě)。這時(shí)可以用通過(guò)下面的宏代碼,當(dāng)用戶在保存工作簿時(shí)進(jìn)行提醒,如果指定的單元格為空則不能保存工作簿。假如工作簿中“Sheet1”表的E6單元格為必填,步驟如下:
1.按Alt+F11打開(kāi)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
當(dāng)Sheet1表的E6單元格為空時(shí),無(wú)論用哪種方式(如另存為、快捷鍵等)保存工作簿,Excel會(huì)彈出一個(gè)對(duì)話框提醒用戶并跳轉(zhuǎn)到指定的單元格。