글쎄, 이건 흥미 롭습니다. 그래서 나는이 템플릿을 공유 목록에서 항목을로드하고 항목을 사용하여 작업을 수행합니다.이미지를 잘 잘라서 내 이메일에 붙여 넣으려고하면 제대로 작동하지 않습니다.
내가해야 할 일 중 하나는 Excel 문서의 스크린 샷을 찍어 전자 메일에 첨부하여 보낼 수 있다는 것입니다. 문제는 공유 드라이브의 폴더에있는 템플릿 Excel 문서를 사용하고 있다는 것입니다. 이 템플릿에서 저는 매일 보고서를 만듭니다. 이 부분은 제대로 작동합니다. 잘라 붙이기 문제 일뿐입니다. 이것이 작동하는 방식은 템플릿 문서에서 스크린 샷을 가져 와서 방금 만든 템플릿이 아닌 템플릿 문서에 추가하는 것입니다. , 그것은 필요한 것입니다. 어쨌든
, 내 코드 :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") . ActiveSheet.Paste – Mike
어떤 통합 문서가 "owssvr"시트인지 묻습니다. – dbmitch