これは面白いです。だから、私はこのテンプレートを共有ポイントのリストからアイテムをロードして、アイテムを使って処理します。私の電子メールにExcelの画像をカットアンドペーストしようとしていますが、正しく機能していません。
私がする必要があることの1つは、Excel文書のスクリーンショットを取って電子メールに添付して送信できることです。問題は、共有ドライブ上のフォルダにあるテンプレートのExcelドキュメントを使用していることです。このテンプレートから、毎日レポートを作成します。この部分はうまくいきます。ちょうどカットアンドペーストの問題です。これは、テンプレートドキュメントからスクリーンショットを取り出し、それをテンプレートドキュメントに追加するだけです。私が作成したものではありませんこれは必要なものです。とにかく
、私のコード:設計どおりCopyPictureが働いていると仮定すると、
run_date = Date
Dim s2 As String
s2 = Format(run_date, "MM-dd-yyyy")
Dim FS As Object
Dim FullPath As String
FullPath = "\\path\Report\Reports\Status Reports\Daily\DailyReportStatusFor" + s2 + ".xlsm"
Set objXL = CreateObject("Excel.Application")
objXL.DisplayAlerts = False
objXL.Application.Workbooks.Open FullPath
Set objActiveWkbk = objXL.Application.ActiveWorkbook
' Where you will enter Sharepoint location path
objXL.Application.Workbooks.Open FullPath
objXL.ActiveWorkbook.SaveAs Filename:= _
"https://Sharepoint/lists/shared documents/DailyReportStatusFor" + s2 + ".xlsm", FileFormat:=1, CreateBackup:=False
Range("'owssvr'!A1:O18").CopyPicture
Sheets("Image").Select
Range("A1").Select
ActiveSheet.Paste
Dim objOLApp As Object 'Outlook.Application
Dim outItem As Object 'Outlook.MailItem
Dim outFolder As Object 'MAPIFolder
Dim DestFolder As Object 'MAPIFolder
Dim outNameSpace As Object 'NameSpace
Dim lngAttachment As Long
SendFrom = "[email protected]"
SendTo = "[email protected]"
ccTo = "[email protected]"
EmailSubject = "Dashboard - Daily Review Status for " + s2
EmailBody = "Attached is the Dashboard - Daily Review Status for " + s2
'Set application settings
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Sheets("Image").Select
Range("A1").Select
Set Sendrng = Selection
With Sendrng
ActiveWorkbook.EnvelopeVisible = False
With .Parent.MailEnvelope
With .Item
.Subject = EmailSubject
.To = SendTo
.CC = ccTo
.SentOnBehalfOfName = SendFrom
.Attachments.Add ("\\Path to report\Report\Reports\Status Reports\Daily\DailyReportStatusFor" + s2 + ".xlsm")
.Body = "Attached is the Dashboard - Daily Review Status for " + s2
.Send
End With
End With
'Outlook_SendEmail = True
End With
objXL.ActiveWorkbook.Close SaveChanges:=False
' objXL.Application.COMAddIns("AmericanExpress.ExcelMetadataAddin").Connect = True
objXL.DisplayAlerts = True
Set objActiveWkbk = Nothing
objXL.Application.Quit
Set objXL = Nothing
Set objNet = Nothing
Set FS = Nothing
Set App = Nothing
Set Itm = Nothing
End Sub
コピーしようとしているブック/シートがわかりません - コードは正常に動作していると思いますか?どのブック/シートを貼り付けようとしていますか?FullPathまたはSaveAsファイルですか? – dbmitch
したがって、このコードを使用しているワークブックからコピーしようとしています: 範囲( "'owssvr'!A1:O18」)CopyPicture シート("イメージ ")選択 範囲(" A1 ") .Select ActiveSheet.Paste – Mike
ブック "owssvr"がどのブックにあるのかを質問しています – dbmitch