![]() |
|
#1
|
|||
|
|||
|
I have cooked up this VBA code to send a part of the sheet as a outlook mail:
Code:
Sub SendNamedRangeAsPictureInBody()
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim WordEditor As Object
Dim ws As Worksheet
Dim strRange As String
Dim rng As Range
Dim InlineShape As Object
' Define your sheet and named range here
Set ws = ThisWorkbook.Sheets("Bla Bla")
strRange = "ToBookKeeping"
' Get the range
Set rng = ws.Range(strRange)
' Copy the range as a picture
rng.CopyPicture Appearance:=xlScreen, Format:=xlPicture
' Create the Outlook application and email
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
' Construct the email
With OutlookMail
.To = "BookKeepersMailAddress"
.Subject = "Hjemmeladning for den angivne periode !"
' Get the Word editor for the email and paste the image
Set WordEditor = OutlookMail.GetInspector.WordEditor
WordEditor.Content.Paste
' Access the last pasted inline shape (the picture) and resize it
Set InlineShape = WordEditor.InlineShapes(WordEditor.InlineShapes.Count)
InlineShape.LockAspectRatio = msoFalse
InlineShape.Width = InlineShape.Width * 2 ' Double the width
InlineShape.Height = InlineShape.Height * 2 ' Double the height
WordEditor.Content.InsertAfter vbCrLf & vbCrLf '& vbCrLf
' Add additional text or formatting here if needed
WordEditor.Content.InsertAfter "Fortsat god dag !" & vbCrLf & "TEAM SUPPORT"
.Display ' Display the email before sending
'.Send ' At sende giver FEJL !!!!!!!!!!!!!!!
End With
' Clean up
Set ws = Nothing
Set rng = Nothing
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Set WordEditor = Nothing
Set InlineShape = Nothing
End Sub
In my FIRST try it worked nicely BUT only as a .DISPLAY of the mail - I had to click on the SEND button to send it ! If I used the .SEND command instead of .Display I got this error: "Invalid procedure call or argument" in the .Send line ! OK, I then tried to search out there and found others with the same problem and they were adviced to update MSOffice (and thereby Outlook) and so I did ... and now I have ANOTHER error in the line: Set WordEditor = OutlookMail.GetInspector.WordEditor the error is: Run-time error '-2147467259 (80004005)' What is wrong here ? ![]()
|
|
#2
|
|||
|
|||
|
No one have any ideas ?
|
|
#3
|
|||
|
|||
|
I tried again this morning and ...
The "DISPLAY-version" works again WITHOUT the "new after-update error" !!! Still the same error in the "SEND-version" |
|
#4
|
|||
|
|||
|
Nothing is wrong - it has to do with MS changing all this _BEEP_ concerning security !
|
|
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
Strange character in text copied from excel
|
AndreHaak | Word | 6 | 05-16-2019 02:40 PM |
| Change excel background color, strange... | sojiro | Excel | 7 | 04-18-2018 10:07 AM |
Strange Excel Behaviour with ACE OLEDB Provider
|
Abumushfiq | Excel | 1 | 06-30-2014 04:20 AM |
Inexplicable automation errors in Word and Excel
|
RichardP | Word VBA | 4 | 08-16-2012 07:38 PM |
| Strange errors | omirza | Excel | 0 | 02-05-2010 01:30 PM |