ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   using rons email but need just printrange to mail (https://www.excelbanter.com/excel-programming/406263-using-rons-email-but-need-just-printrange-mail.html)

pswanie

using rons email but need just printrange to mail
 
im using one of rons email macro's to mail the sheet.
i got my checkbox linked to k4. outside of the print range (when u go
printpreview)

but when i email it in the body of mail as html it includes all the data
even if i got it in white so it does not show on screen.

Ron de Bruin

using rons email but need just printrange to mail
 
Hi

Try this
Set rng = Range(ActiveSheet.PageSetup.PrintArea)


Sub Mail_Selection_Range_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object

Set rng = Nothing
On Error Resume Next
Set rng = Range(ActiveSheet.PageSetup.PrintArea)
On Error GoTo 0

If rng 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

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

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

On Error Resume Next
With OutMail
.To = "
.CC = ""
.BCC = ""
.Subject = "This is the Subject line"
.HTMLBody = RangetoHTML(rng)
.display 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing
End Sub



--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...
im using one of rons email macro's to mail the sheet.
i got my checkbox linked to k4. outside of the print range (when u go
printpreview)

but when i email it in the body of mail as html it includes all the data
even if i got it in white so it does not show on screen.


pswanie

using rons email but need just printrange to mail
 
just that one line that i need to add in and then ive " ' " the old line?

im getting a error

-----------------------------------------------------------------------------
method 'range' of object'_global' failed
-----------------------------------------------------------------------------
debug bring me to that line that i pasted in


"Ron de Bruin" wrote:

Hi

Try this
Set rng = Range(ActiveSheet.PageSetup.PrintArea)


Sub Mail_Selection_Range_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object

Set rng = Nothing
On Error Resume Next
Set rng = Range(ActiveSheet.PageSetup.PrintArea)
On Error GoTo 0

If rng 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

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

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

On Error Resume Next
With OutMail
.To = "
.CC = ""
.BCC = ""
.Subject = "This is the Subject line"
.HTMLBody = RangetoHTML(rng)
.display 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing
End Sub



--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...
im using one of rons email macro's to mail the sheet.
i got my checkbox linked to k4. outside of the print range (when u go
printpreview)

but when i email it in the body of mail as html it includes all the data
even if i got it in white so it does not show on screen.



Ron de Bruin

using rons email but need just printrange to mail
 
Show me the macro you use now



--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...
just that one line that i need to add in and then ive " ' " the old line?

im getting a error

-----------------------------------------------------------------------------
method 'range' of object'_global' failed
-----------------------------------------------------------------------------
debug bring me to that line that i pasted in


"Ron de Bruin" wrote:

Hi

Try this
Set rng = Range(ActiveSheet.PageSetup.PrintArea)


Sub Mail_Selection_Range_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object

Set rng = Nothing
On Error Resume Next
Set rng = Range(ActiveSheet.PageSetup.PrintArea)
On Error GoTo 0

If rng 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

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

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

On Error Resume Next
With OutMail
.To = "
.CC = ""
.BCC = ""
.Subject = "This is the Subject line"
.HTMLBody = RangetoHTML(rng)
.display 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing
End Sub



--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...
im using one of rons email macro's to mail the sheet.
i got my checkbox linked to k4. outside of the print range (when u go
printpreview)

but when i email it in the body of mail as html it includes all the data
even if i got it in white so it does not show on screen.



pswanie

using rons email but need just printrange to mail
 



Sub Mail_Sheet_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
'thanx to Ron 4 this macro
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

Set rng = Nothing
'Set rng = ActiveSheet.UsedRange
'You can also use a sheet name
'Set rng = Sheets("sheet1").UsedRange
Set rng = Range(ActiveSheet.PageSetup.PrintArea)



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

On Error Resume Next
With OutMail
.to = "
'.CC = ""
'.BCC = ""
.Subject = "Fault description log sent:" & " " & Format(Date, "dddd
dd/mm/yyyy") & " " & Format(Now, "hh:mm")
.HTMLBody = RangetoHTML(rng)
.Send 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing

Sheets("Sheet1").PrintOut



End Sub

Ron de Bruin

using rons email but need just printrange to mail
 
Working OK here but use the exact macro I posted and see if it give you the msgbox

--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...



Sub Mail_Sheet_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
'thanx to Ron 4 this macro
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

Set rng = Nothing
'Set rng = ActiveSheet.UsedRange
'You can also use a sheet name
'Set rng = Sheets("sheet1").UsedRange
Set rng = Range(ActiveSheet.PageSetup.PrintArea)



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

On Error Resume Next
With OutMail
.to = "
'.CC = ""
'.BCC = ""
.Subject = "Fault description log sent:" & " " & Format(Date, "dddd
dd/mm/yyyy") & " " & Format(Now, "hh:mm")
.HTMLBody = RangetoHTML(rng)
.Send 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing

Sheets("Sheet1").PrintOut



End Sub


pswanie

using rons email but need just printrange to mail
 
i do get the msg box. but i do have data on the sheet that needs to mail.


my data is from a1 to j37 on sheet1

got other data on sheet2 aswell

will check again tomorow and let u know....
time to go home

"Ron de Bruin" wrote:

Working OK here but use the exact macro I posted and see if it give you the msgbox

--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...



Sub Mail_Sheet_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
'thanx to Ron 4 this macro
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

Set rng = Nothing
'Set rng = ActiveSheet.UsedRange
'You can also use a sheet name
'Set rng = Sheets("sheet1").UsedRange
Set rng = Range(ActiveSheet.PageSetup.PrintArea)



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

On Error Resume Next
With OutMail
.to = "
'.CC = ""
'.BCC = ""
.Subject = "Fault description log sent:" & " " & Format(Date, "dddd
dd/mm/yyyy") & " " & Format(Now, "hh:mm")
.HTMLBody = RangetoHTML(rng)
.Send 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing

Sheets("Sheet1").PrintOut



End Sub



Ron de Bruin

using rons email but need just printrange to mail
 
Do you have set the print area manual ?

When you do Ctrl F3 you can see if there is a named range Print_Area.
If not set it and try the code again


--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...
i do get the msg box. but i do have data on the sheet that needs to mail.


my data is from a1 to j37 on sheet1

got other data on sheet2 aswell

will check again tomorow and let u know....
time to go home

"Ron de Bruin" wrote:

Working OK here but use the exact macro I posted and see if it give you the msgbox

--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...



Sub Mail_Sheet_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
'thanx to Ron 4 this macro
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

Set rng = Nothing
'Set rng = ActiveSheet.UsedRange
'You can also use a sheet name
'Set rng = Sheets("sheet1").UsedRange
Set rng = Range(ActiveSheet.PageSetup.PrintArea)



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

On Error Resume Next
With OutMail
.to = "
'.CC = ""
'.BCC = ""
.Subject = "Fault description log sent:" & " " & Format(Date, "dddd
dd/mm/yyyy") & " " & Format(Now, "hh:mm")
.HTMLBody = RangetoHTML(rng)
.Send 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing

Sheets("Sheet1").PrintOut



End Sub



pswanie

using rons email but need just printrange to mail
 
thanx ron...

did not know about the ctrl f3.... learn something new every day.. will
keep that in mind next time

"Ron de Bruin" wrote:

Do you have set the print area manual ?

When you do Ctrl F3 you can see if there is a named range Print_Area.
If not set it and try the code again


--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...
i do get the msg box. but i do have data on the sheet that needs to mail.


my data is from a1 to j37 on sheet1

got other data on sheet2 aswell

will check again tomorow and let u know....
time to go home

"Ron de Bruin" wrote:

Working OK here but use the exact macro I posted and see if it give you the msgbox

--

Regards Ron de Bruin
http://www.rondebruin.nl/tips.htm


"pswanie" wrote in message ...



Sub Mail_Sheet_Outlook_Body()
' Don't forget to copy the function RangetoHTML in the module.
'thanx to Ron 4 this macro
' Working in Office 2000-2007
Dim rng As Range
Dim OutApp As Object
Dim OutMail As Object
With Application
.EnableEvents = False
.ScreenUpdating = False
End With

Set rng = Nothing
'Set rng = ActiveSheet.UsedRange
'You can also use a sheet name
'Set rng = Sheets("sheet1").UsedRange
Set rng = Range(ActiveSheet.PageSetup.PrintArea)



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

On Error Resume Next
With OutMail
.to = "
'.CC = ""
'.BCC = ""
.Subject = "Fault description log sent:" & " " & Format(Date, "dddd
dd/mm/yyyy") & " " & Format(Now, "hh:mm")
.HTMLBody = RangetoHTML(rng)
.Send 'or use .Display
End With
On Error GoTo 0

With Application
.EnableEvents = True
.ScreenUpdating = True
End With

Set OutMail = Nothing
Set OutApp = Nothing

Sheets("Sheet1").PrintOut



End Sub




All times are GMT +1. The time now is 01:52 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com