Range is nothing


T

ToddEZ

I have a rather complicated set of macros that creates an html email with a
pdf attachment. However I have one annoying problem with my code. Every
other time I run the macro a range that I try to manipulate "is nothing."
Any ideas why I would only get this error every other time I run the macro?
Here is a bit of my code where the error seems to occur...

WB1.Sheets("Template").Activate
Range("A1").Select

Dim rngh As Range
Dim OutApp As Object
Dim OutMail As Object

With Application
.EnableEvents = False
.ScreenUpdating = False
End With

On Error Resume Next
'Only the visible cells in the selection
Set rngh =
Sheets("Template").Range("A6:f26").SpecialCells(xlCellTypeVisible)
On Error GoTo 0

If rngh Is Nothing Then
MsgBox "The selection is not a range or the sheet is protected" &
vbNewLine & "please correct and try again.", vbOKOnly
Exit Sub
End If

Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)
 
Ad

Advertisements

T

ToddEZ

It seems to be working now. However, every other time I run the marcro it
seems to take much longer. without posting a bunch of code, do you have any
ideas what would cause this type of error?
 
D

Dave Peterson

That can't be the problem. I make many of these upper/lower case typing
"errors" and it doesn't fail for me.
 
D

Dave Peterson

Another guess, but it's based on imcomplete code...

You can only activate a worksheet that's in the active workbook.

with wb1
.activate
.sheets("template").activate
.sheets("template").range("a1").select
end with

And maybe...

Set rngh _
= wb1.Sheets("Template").Range("A6:f26").SpecialCells(xlCellTypeVisible)
 
R

Ron de Bruin

mmm

Strange

Yesterday I not see the : in the code
My eyes I think <g>
 
Ad

Advertisements


Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top