-1

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

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

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

4

2 回答 2

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
于 2012-05-11T18:35:36.357 回答
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
于 2012-07-27T18:48:19.733 回答