PC Review


Reply
Thread Tools Rate Thread

Ask for email title/comments in working Mail Active Sheet code

 
 
J.W. Aldridge
Guest
Posts: n/a
 
      8th Jan 2009
I have mail this active sheet code that works just fine... I only need
to make two small ammendments.

- Instead of the subject being pre-set (in the code below), I need a
pop-up box asking for the title. (This is the line where the title "My
Daily Performance" is just after the email names).

- I also need a pop-up box asking for any comments in the body of the
email.

Thanx


Sub Mail_ActiveSheet()
'Working in 97-2007
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String

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

Set Sourcewb = ActiveWorkbook

'Copy the sheet to a new workbook
ActiveSheet.Copy
Set Destwb = ActiveWorkbook

'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) < 12 Then
'You use Excel 97-2003
FileExtStr = ".xls": FileFormatNum = -4143
Else
'You use Excel 2007
'We exit the sub when your answer is NO in the security
dialog that you only
'see when you copy a sheet from a xlsm file with macro's
disabled.
If Sourcewb.Name = .Name Then
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
MsgBox "Your answer is NO in the security dialog"
Exit Sub
Else
Select Case Sourcewb.FileFormat
Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
Case 52:
If .HasVBProject Then
FileExtStr = ".xlsm": FileFormatNum = 52
Else
FileExtStr = ".xlsx": FileFormatNum = 51
End If
Case 56: FileExtStr = ".xls": FileFormatNum = 56
Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
End Select
End If
End If
End With

' 'Change all cells in the worksheet to values if you want
' With Destwb.Sheets(1).UsedRange
' .Cells.Copy
' .Cells.PasteSpecial xlPasteValues
' .Cells(1).Select
' End With
' Application.CutCopyMode = False

'Save the new workbook/Mail it/Delete it
TempFilePath = Environ$("temp") & "\"
TempFileName = "My Daily Recap"
'TempFileName = Sourcewb.Name & " " & Format(Now, "dd-mmm-yy h-mm-
ss")

With Destwb
.SaveAs TempFilePath & TempFileName & FileExtStr,
FileFormat:=FileFormatNum
On Error Resume Next

.SendMail Array("Jeremy Aldridge", "Mickey Mouse"),
_
"My Daily Performance"


On Error GoTo 0
.Close SaveChanges:=False
End With

'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr

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

 
Reply With Quote
 
 
 
 
Ron de Bruin
Guest
Posts: n/a
 
      8th Jan 2009
Which mail program do you use ?


--

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


"J.W. Aldridge" <(E-Mail Removed)> wrote in message
news:1d185ac9-b6b9-4b15-94af-(E-Mail Removed)...
>I have mail this active sheet code that works just fine... I only need
> to make two small ammendments.
>
> - Instead of the subject being pre-set (in the code below), I need a
> pop-up box asking for the title. (This is the line where the title "My
> Daily Performance" is just after the email names).
>
> - I also need a pop-up box asking for any comments in the body of the
> email.
>
> Thanx
>
>
> Sub Mail_ActiveSheet()
> 'Working in 97-2007
> Dim FileExtStr As String
> Dim FileFormatNum As Long
> Dim Sourcewb As Workbook
> Dim Destwb As Workbook
> Dim TempFilePath As String
> Dim TempFileName As String
>
> With Application
> .ScreenUpdating = False
> .EnableEvents = False
> End With
>
> Set Sourcewb = ActiveWorkbook
>
> 'Copy the sheet to a new workbook
> ActiveSheet.Copy
> Set Destwb = ActiveWorkbook
>
> 'Determine the Excel version and file extension/format
> With Destwb
> If Val(Application.Version) < 12 Then
> 'You use Excel 97-2003
> FileExtStr = ".xls": FileFormatNum = -4143
> Else
> 'You use Excel 2007
> 'We exit the sub when your answer is NO in the security
> dialog that you only
> 'see when you copy a sheet from a xlsm file with macro's
> disabled.
> If Sourcewb.Name = .Name Then
> With Application
> .ScreenUpdating = True
> .EnableEvents = True
> End With
> MsgBox "Your answer is NO in the security dialog"
> Exit Sub
> Else
> Select Case Sourcewb.FileFormat
> Case 51: FileExtStr = ".xlsx": FileFormatNum = 51
> Case 52:
> If .HasVBProject Then
> FileExtStr = ".xlsm": FileFormatNum = 52
> Else
> FileExtStr = ".xlsx": FileFormatNum = 51
> End If
> Case 56: FileExtStr = ".xls": FileFormatNum = 56
> Case Else: FileExtStr = ".xlsb": FileFormatNum = 50
> End Select
> End If
> End If
> End With
>
> ' 'Change all cells in the worksheet to values if you want
> ' With Destwb.Sheets(1).UsedRange
> ' .Cells.Copy
> ' .Cells.PasteSpecial xlPasteValues
> ' .Cells(1).Select
> ' End With
> ' Application.CutCopyMode = False
>
> 'Save the new workbook/Mail it/Delete it
> TempFilePath = Environ$("temp") & "\"
> TempFileName = "My Daily Recap"
> 'TempFileName = Sourcewb.Name & " " & Format(Now, "dd-mmm-yy h-mm-
> ss")
>
> With Destwb
> .SaveAs TempFilePath & TempFileName & FileExtStr,
> FileFormat:=FileFormatNum
> On Error Resume Next
>
> .SendMail Array("Jeremy Aldridge", "Mickey Mouse"),
> _
> "My Daily Performance"
>
>
> On Error GoTo 0
> .Close SaveChanges:=False
> End With
>
> 'Delete the file you have send
> Kill TempFilePath & TempFileName & FileExtStr
>
> With Application
> .ScreenUpdating = True
> .EnableEvents = True
> End With
> End Sub
>


 
Reply With Quote
 
J.W. Aldridge
Guest
Posts: n/a
 
      8th Jan 2009
I use outlook, 2003
 
Reply With Quote
 
Ron de Bruin
Guest
Posts: n/a
 
      8th Jan 2009
>I use outlook, 2003

Then use code like this and use
http://www.rondebruin.nl/mail/folder2/mail2.htm

..Display instead of .Send



--

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


"J.W. Aldridge" <(E-Mail Removed)> wrote in message
news:2e312777-0d10-4e25-8c5b-(E-Mail Removed)...
>I use outlook, 2003


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Need VBA Code to Let User Define Active Sheet =?Utf-8?B?enVsZmVyNw==?= Microsoft Excel Misc 3 29th Mar 2007 02:59 PM
Code to work with ONLY active Sheet not all ? Corey Microsoft Excel Programming 2 9th Oct 2006 02:52 AM
How do i copy a active sheet to a new sheet with code and everything Karill Microsoft Excel Programming 2 11th Apr 2006 06:22 PM
Code to make a sheet active =?Utf-8?B?aHNoYXloMHJu?= Microsoft Excel Programming 10 5th Feb 2006 10:28 PM
Changing code that set's print area...to active sheet only KimberlyC Microsoft Excel Programming 4 10th Jul 2005 10:19 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 11:09 AM.