Compile error, Variable not defined

  • Thread starter Thread starter RJR
  • Start date Start date
R

RJR

I have this code in a file that searches an entire form and is activated to
print preview a file. When it works, it stops printing row at the last entry
in the sheet. I get the Compile error, Variable not defined when I fire the
macro and it appears at the "For Each "cell" .............
I need it to count rows with data in the first column and then when it comes
to the end, to send the document to the printer with only the rows with data
showing.. Any help would be appreciated.
Thanks


Sub findlastrow()
Dim lastrow As Long
Dim r As Range
lastrow = 1
For Each cell In Range(Cells(1, "A"), Cells(Rows.Count, "A").End(xlUp))
If Trim(cell.Text) <> "" Then
lastrow = cell.Row
End If
Next
Set r = ActiveSheet.Range("A1:M" & lastrow)
r.PrintPreview
' or
'Activesheet.PageSetup.PrintArea = r.address(external:=true)
'Activesheet.Printout
End Sub
 
Include the following after your existing Dim statements.

Dim Cell As Range


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
(email address is on the web site)
 
You have
Option Explicit
at the top of the module.

That means that you've told excel that you're going to declare every variable
you use in that module.

And Cell wasn't dimmed.

Add this line near the top:

Dim Cell As Range
 
Back
Top