3

I am trying to send a picture from an Excel sheet, but the size is very small.

How could I get a decent size (basically the whole screen)?

Here is the code:

Sub send_as_a_pic()
    'Copy range of interest
    Dim r As Range
    Set r = Range("B2:O23")
    r.Copy

    'Open a new mail item
    Dim outlookApp As Outlook.Application
    Set outlookApp = CreateObject("Outlook.Application")
    Dim outMail As Outlook.MailItem
    Set outMail = outlookApp.CreateItem(olMailItem)

    With outMail
        .To = "fernando.grespan@fernando.com"
        .CC = ""
        .BCC = ""
        .Subject = "PAC 2017 sales up to date"
    End With

    'Get its Word editor
    outMail.Display
    Dim wordDoc As Word.Document
    Set wordDoc = outMail.GetInspector.WordEditor

    'To paste as picture
    wordDoc.Range.PasteAndFormat wdChartPicture

    'With wordDoc.Range
     '   .LockAspectRatio = True
      '  .Top = wordDoc.Top
       ' .Left = wordDoc.Left
        '.Height = wordDoc.RowHeight
    'End With

End Sub
Community
  • 1
  • 1
draynaud
  • 63
  • 1
  • 8
  • 1
    did you try `r.CopyPicture` instead of `r.Copy`? You might also try `wordDoc.Application.CommandBars.ExecuteMSO("PastePNG")` – David Zemens Aug 01 '17 at 19:49

1 Answers1

1

it was actually pretty easy, find the answer on develloppez.com:

    For Each shp In wordDoc.InlineShapes
        shp.ScaleHeight = 90
        shp.ScaleWidth = 90
    Next

Thank you!

draynaud
  • 63
  • 1
  • 8