2017-12-08 1 views
0

Ich habe versucht zu verstehen, wie die erste Zeile (A) meines Blattes zu überspringen, wenn ich unter Code verwenden, die überprüfen, ob ein Wert auf meinem Excel-Blatt verfügbar ist.VBA: Code Überprüfung - Überspringe erste Zeile eines Blattes

Sub IsActiveSheetEmpty() 
    If WorksheetFunction.CountA(Cells) = 0 Then 
     MsgBox ActiveSheet.Name & " is empty" 
    Else 
     MsgBox ActiveSheet.Name & " is not empty" 
    End If 
End Sub 

Vielen Dank im Voraus

Antwort

3

Versuchen Sie Folgendes (implizit aktives Blatt referenziert, so dass Sie explizit die Arbeitsblatt-Namen angeben möchten vielleicht.) Es wird die letzte Zeile verwenden und Spalte, für die je Version von Excel Sie verwenden:

+0

Die Erwähnung von impliziter Active Referenz bekommt meine Stimme überspringen! –

+0

@ Mat'sMug Ich kann RubberDuck für meine Obsession mit impliziten Referenzen danken! – QHarr

0
Sub IsActiveSheetEmpty() 
If WorksheetFunction.CountA("A2:A5") = 0 Then 'skips A1 
    MsgBox ActiveSheet.Name & " is empty" 
Else 
    MsgBox ActiveSheet.Name & " is not empty" 
End If 

End Sub

+0

Dank @pokemon_Man, Und sorry für die Frage, war ich erwartet, dass die Reihe ‚A‘ vollständig und überprüft restliche Zeilen und Spalten – dhanya

1

Scheint wie es sollte eine boolesche-zurückkehrende Funktion sein, aber nicht:

Option explicit 

Sub IsActiveSheetEmpty() 

Dim ws as worksheet 
Set ws = Activesheet 

With ws 

If application.CountA(.range(.range("B1"),.cells(.rows.count,.columns.count))) = 0 Then 
MsgBox .Name & " is empty" 
Else 
MsgBox .Name & " is not empty" 
End If 

End with 

End Sub 

Ungetestet, geschrieben am Handy. Tut es was du willst?

Edit: Denke du meinst Spalte A?

1
Option Explicit 
Sub IsActiveSheetEmpty() 
    Dim myRange As Range 
    Set myRange = Range("A2",Cells(2,1).SpecialCells(XlCellType.xlCellTypeLastCell)) 

    If WorksheetFunction.CountA(myRange) = 0 Then 
     MsgBox ActiveSheet.Name & " is empty" 
    Else 
     MsgBox ActiveSheet.Name & " is not empty" 
    End If 
End Sub 
Verwandte Themen