I have looked at the suggested questions to find the answer to my problem. The closest question is called: Count number of rows in a different Excel Sheet Count number of rows in a different Excel Sheet
The solution to that problem does not work for me.
I am trying to count the number of rows in a range in a different worksheet than the active worksheet. Here is my code:
Sub verbflashcards()
Dim wordcount As Long
With Worksheets("Verbs")
wordcount = .Range(Cells(4, 1), Cells(4, 1).End(xlDown)).Rows.Count
End With
MsgBox (wordcount)
End Sub
I have a worksheet called Verbs and it is the second worksheet in the workbook. I have tried:
With Verbs
With Sheet2
With Sheets("Verbs")
With Sheets("Sheet2")
None of them seem to work.
Your original was not working because the parent of Cells(4, 1)
and Cells(4, 1).End(xlDown)
was not specified. Prefix any cell address with a period (aka . or full stop) when you are inside a With ... End With
block. Example:
With Worksheets("Verbs")
wordcount = .Range(.Cells(4, 1), .Cells(4, 1).End(xlDown)).Rows.Count
End With
Note the .Cells(4, 1)
and not Cells(4, 1)
. The period specifies that the cell(s) you are referring to are within Worksheets("Verbs").