전자 메일 서식 파일에 첨부 된 통합 문서를 열어 편집하고 메시지를 보내기 전에 저장할 수있는 방법이 있습니까? Set Mesg = OutlookAp.CreateItemFromTemplate("C:\Template.oft")
을 사용하여 mailitem 개체를 만들었습니다. 첨부 파일을 볼 수는 있지만 지금까지 열 수는 없습니다. 누구든지 제안을하거나 간단하게 할 수 없다는 것을 알고 있다면 나는 모두 귀입니다. 단순히 VBA를 통해VBA 열린 통합 문서가 Outlook 템플릿에 첨부 됨
1
A
답변
0
나는 당신이 가정을 첨부 파일을 열 수 없습니다처럼 저장하고 아이디어에 열려 ... 이메일을 보내기 전에 파일을 편집 할 수 있지만, 보이는 것처럼
이 보이는 Outlook 을 Excel에서 자동화합니다. 이 솔루션은 당신을 위해 작동 할 수 있지만 첨부 파일을 저장하고 조작 된 버전의 파일을 다시 첨부해야합니다. 통합 문서 첨부 파일을 "편집"하는 코드를 작성할 수 있다고 가정하면이 코드가 유용 할 것입니다.
Sub TestOutlookTemplate()
Dim MyOutlook As Outlook.Application
Dim MyMail As Outlook.MailItem
Dim att As Outlook.Attachment
Dim templatePath As String
Dim tempFileName As String
Dim attWorkbook As Workbook
templatePath = "C:\users\david_zemens\desktop\Untitled.oft"
tempFileName = "C:\users\david_zemens\desktop\tempexcelfile.xlsx"
Set MyOutlook = CreateObject("Outlook.Application")
Set MyMail = MyOutlook.CreateItemFromTemplate(templatePath)
MyMail.Display
For Each att In MyMail.Attachments
If att.DisplayName Like "*.xls*" Then
att.SaveAsFile tempFileName
'Now that you have saved the file, delete the attachment
att.Delete
'Open the file
Set attWorkbook = Workbooks.Open(tempFileName)
'Perform manipulation on the file
attWorkbook.Sheets(1).Name = "Sheet ONE"
'Save fhe file
attWorkbook.Save
'Close the file
attWorkbook.Close
MyMail.Attachments.Add tempFileName
End If
Next
'Send your mail (make sure you have added a recipient
MyMail.Send
Set attWorkbook = Nothing
Set MyMail = Nothing
Set MyOutlook = Nothing
End Sub
관련 문제
- 1. Excel VBA : 열린 통합 문서가 첨부 파일입니까
- 2. VBA - 열린 통합 문서 활성화
- 3. 통합 문서가 열린 후 auto_open 실행
- 4. Excel에서 Outlook VBA 호출
- 5. VBA 편집기에 닫힌 통합 문서가 남아 있습니다.
- 6. 첨부 파일이있는 전자 메일을 보내는 Outlook VBA
- 7. Outlook 2010의 .XLSX 첨부 파일 (VBA 포함)
- 8. Outlook VBA 첨부 파일 내에있는 문자열에서 첨부 파일 filename 소싱
- 9. Outlook 폴더에 첨부 파일 저장
- 10. VBA Outlook Script
- 11. VBA 열린 변수 Excel 파일
- 12. VBA Outlook 본문 검색
- 13. 내가 통합 문서가 아는 시트의 위치를 당겨야 VBA
- 14. 통합 문서가 VBA 또는 사용자를 통해 열려 있는지 찾기
- 15. Excel 통합 문서가 여전히 프로세스에서 실행중인 VBA 코드를 통해 닫았습니다.
- 16. 통합 문서가 닫히면 무언가를하십시오.
- 17. vba outlook : 이메일을 보내고 첨부 파일을 엑셀로 저장하고 저장합니다.
- 18. MS Outlook 2007 ~ 첨부 파일의 텍스트에 규칙을 적용하는 VBA
- 19. OUTGOING 메시지의 첨부 파일을 폴더에 저장하는 Outlook VBA
- 20. VBA Outlook - 첨부 파일 이름 바꾸기 및 폴더에 저장
- 21. Outlook 2010 VBA 특정 날짜에 첨부 파일 저장
- 22. Outlook VBA 텍스트 줄 삽입
- 23. VBA Outlook SaveAsFile 메서드가 빈 파일을 만듭니다.
- 24. VBA Outlook 추가 기능의 옵션
- 25. Outlook vba 오류
- 26. VBA Outlook - 상자에서 설정하십시오.
- 27. Outlook VBA 폴더 이벤트
- 28. Outlook vba .sendOnBehalfOf 속성?
- 29. VBA Outlook 2010 이전
- 30. VBA Outlook 프로그래밍
아래에서 제 제안을 시도해 봤습니까? –
예,했는데 정답으로 선택했습니다. 기술적으로는 첨부 파일 개체를 잡고 임시 폴더에 저장하지 않고도 Excel의 현재 인스턴스에서 열거 나 편집 할 수 있지만 처음에는 불가능한 것처럼 보였으므로 끝까지 사용했습니다. 이 방법의 변형입니다. – MattB
이 대답은 Excel의 현재 인스턴스에서 파일을 열어야합니다. 그렇지 않습니까? 임시 폴더에 관해서는 ... 아래의 대답은 임시 폴더를 사용하지 않지만 알려진 위치에서 파일을 저장하고 열어야합니다. 임시 폴더에서 파일을 여는 두 번 클릭 동작을 복제 할 수 있지만 다른 방법으로 수행해야하는 경우 실제 임시 폴더를 사용하는 것이 가능할 수 있습니다. Attachment 객체는 두 개의 메소드 ('.Delete'와'.SaveAsFile') 만 지원합니다. OLEFormat.DoVerb와 같은 것을 찾고 있었지만, 여기서는 옵션이없는 것 같습니다. –