Excel VBA 判断工作表是否为空或被使用过(比如设置过框线)

时间:2024-03-04 18:20:07
IsEmpty 函数
返回 Boolean 值,指出变量是否已经初始化。
【语法】
IsEmpty(expression)
必要的 expression 参数是一个 Variant,包含一个数值或字符串表达式(实际上还可以是单元格)。但是,因为 IsEmpty 被用来确定个别变量是否已初始化,
所以 expression 参数通常是单一变量名。 【说明】 如果变量未初始化或已明确设置为 Empty,则 IsEmpty 返回
True;否则返回 False。如果 expression 含有多个变量,则 IsEmpty 总是返回 False
IsEmpty 只返回对 variant 表达式有意义的信息。

 

\'判断工作表是使用过自定义函数
Function isUsedSheet(ByVal sheet As Worksheet) As Boolean
    isUsedSheet = IsEmpty(sheet.UsedRange)
End Function
\'判断工作表是为空工作表(即所以单元格的值为空)自定义函数
Function isEmptySheet(ByVal sheet As Worksheet) As Boolean
    If Application.WorksheetFunction.CountA(sheet.Cells) > 0 Then
        isEmptySheet = False
    Else
        isEmptySheet = True
    End If
End Function




Sub shtTest() \'测试
    Dim sht1 As Worksheet
    For Each sht1 In Sheets
        Debug.Print sht1.Name & " is empty? " & isEmptySheet(sht1)
        Debug.Print sht1.Name & " is used? " & isUsedSheet(sht1)
    Next
    
End Sub