Är arbetsbladet tomt?
I detta tips demonstreras hur vi på ett relativt enkelt sätt kan avgöra om ett arbetsblad är tom på data eller inte. Detta kan vara viktigt i flera sammanhang där data måste anges innan nästa steg i processen tar vid, såsom vid konvertering mm.
Option Explicit
Sub TomtArbetsblad_AntalOmraden()
'© 2002 Alla rättigheter XL-Dennis
Dim wbBok As Workbook
Dim wsBlad As Worksheet
Dim rnOmrade As Range, rnCell As Range
Set wbBok = ThisWorkbook
Set wsBlad = wbBok.Worksheets("Blad1")
On Error Resume Next
With wsBlad.UsedRange
'Formler och funktioner
Set rnOmrade = .SpecialCells(xlCellTypeFormulas)(1, 1)
'Text och tal
If rnOmrade Is Nothing Then
Set rnOmrade = .SpecialCells(xlCellTypeConstants)(1, 1)
End If
'Sammanfogar alla områden med formler och funktioner.
For Each rnCell In .SpecialCells(xlCellTypeFormulas)
Set rnOmrade = Application.Union(rnOmrade, rnCell)
Next rnCell
'Sammanfogar alla områden med text och tal
For Each rnCell In .SpecialCells(xlCellTypeConstants)
Set rnOmrade = Application.Union(rnOmrade, rnCell)
Next rnCell
End With
If rnOmrade Is Nothing Then
MsgBox "Arbetsbladet är tomt!", vbInformation
Else
MsgBox "Det finns " & rnOmrade.Areas.Count & " områden med data i.", _
vbInformation
End If
End Sub