2016-11-17 12 views
0

私はVBAコーディングが初めてで、マクロに問題があります。私は、Excelの範囲を画像としてOutlookにコピーし、本文にテキストを追加しようとしています。しかし、私のコードは、テキストを追加し、その上に画像を貼り付けることです。テキストの下に貼り付けるにはどうしたらいいですか?ラインでVBA Excelの画像がOutlookメールのテキストをペーストする

Dim OutApp As Object 
Dim outMail As Object 
Dim myFileList(1) As String 
Dim i As Long 

Set OutApp = CreateObject("Outlook.Application") 
Set outMail = OutApp.CreateItem(0) 

Set RngCopied = Worksheets("Daily volume summary").Range("VolumeRange") 

myFileList(0) = "Y:xyz\sales.pdf" 
myFileList(1) = "Y:xyz\sales.xlsx" 


'On Error Resume Next 
With outMail 
    .To = "[email protected]" 
    .CC = "[email protected]" 
    .BCC = "" 
    .Subject = "PBC Daily Sales " & Format(Date, "mm/dd/yyyy") 
    .Body = "Good morning," & vbNewLine & vbNewLine & "Attach is the Daily Sales report for " & Format(Date, "dddd,mmmm,dd,YYYY") & "." & "<br>" 

'Copy range of interest 

Dim r As Range 

Set r = Worksheets("Daily volume summary").Range("VolumeRange") 
r.Copy 

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


'To paste as picture 
wordDoc.Range.PasteAndFormat wdChartPicture 
Dim shp As Object 
    For Each shp In wordDoc.InlineShapes 
    shp.ScaleHeight = 60 
    shp.ScaleWidth = 60 
    Next 

    For i = 0 To UBound(myFileList) 
    .Attachments.Add myFileList(i) 
    Next 

    .Send 
End With 
On Error GoTo 0 

Set outMail = Nothing 
Set OutApp = Nothing 
End Sub 

答えて

1

:あなたがあなたの写真とメッセージのWord文書の範囲全体を交換する

wordDoc.Range.PasteAndFormat wdChartPicture 

は、ここに私のコードです。代わりに、範囲内のどこに貼り付けるかをメモする必要があります。これはあなたのテキストの後に置くべきです:

wordDoc.Range(start:=wordDoc.Range.End - 2).PasteAndFormat wdChartPicture 
+0

それは動作します!ありがとうございました –

関連する問題