保存/关闭时的Excel数据验证

时间:2012-05-11 17:26:29

标签: excel validation vba excel-vba

我有一个包含10列的标准Excel表格:

例如,用户最多可以填充100行。我想编写一个宏/验证,以便为每一行填充所有10列。

我需要在用户保存/关闭工作表时向用户显示警报的方法。

2 个答案:

答案 0 :(得分:1)

这是最基本的想法。您应该可以对此进行扩展,然后使用一些工作簿事件在保存和/或关闭时调用此宏。

Sub ValidateData()
Dim ws As Worksheet, Rw As Long

Set ws = Sheets("Sheet1")       'the sheet to analyze

For Rw = 1 To ws.UsedRange.Rows.Count
    If WorksheetFunction.CountA(Rows(Rw)) <> 0 Then
        If WorksheetFunction.CountA(Rows(Rw)) < 10 Then
            ws.Activate
            ws.Range("A" & Rw).Resize(, 10).Select
            MsgBox "This row is incomplete"
            Exit Sub
        End If
    End If
Next Rw

End Sub

答案 1 :(得分:1)

我希望这可以帮助那些人,因为OP早已不复存在。您可以将范围更改为A1:J1000或您需要的任何单元格。这假设您从工作表级别调用它。否则,您可能需要明确引用范围。

Option Explicit

Sub Validater()

Dim r As Range
Dim numBlanks As Integer

Set r = Range("A1:E10")

numBlanks = WorksheetFunction.CountBlank(r)

If numBlanks > 0 Then
    MsgBox "There are " & numBlanks & " empty cells."
End If

End Sub