Sub ADD_Selected_Sheets() '보고용 문서 만들기
Dim ws As Worksheet
Dim cs As Worksheet
Dim arrSht '선택된 각 시트를 넣을 배열형 변수
arrSht = Array("업무일지") '시트를 배열에 넣음
' 시트수가 여러개 일경우 콤마(,)로 구분한다.
ActiveWorkbook.Sheets(arrSht).Copy '배열의 시트를 새로운 워크북에 넣음
Set cs = ActiveSheet '수식의 값만을 취한다.
For Each ws In ActiveWorkbook.Worksheets
ws.Activate
With Cells
.Copy
.PasteSpecial Paste:=xlValues, operation:=xlNone, skipblanks:=False, Transpose:=False
End With
Application.Goto reference:=[A1]
Next ws
With Application
.CutCopyMode = False
.ScreenUpdating = True
End With
cs.Activate '수식의 값취하기 끝
'새 문서에 저장한다.
ActiveWorkbook.SaveAs Filename:="D:\test\업무일지\" & "업무일지-" & Format(Date, "yyyy.mm.dd") & ".xlsx" '윗줄과 한줄 연속된 문장
ActiveWorkbook.Close '새 문서 작성을 위해 열었던 문서를 닫는다.
Dim ol As New Outlook.Application
Dim mail As MailItem
Set mail = ol.CreateItem(olMailItem)
mail.Body = Format(Date, "yyyy.mm.dd") & " 업무일지입니다." & Chr(13) & Chr(13) & "감사합니다." & Chr(13) & Chr(13) '윗줄과 한줄 연속된 문장
mail.To = "test@test.com"
mail.Subject = Format(Date, "yyyy.mm.dd") & " 업무일지입니다."
mail.Attachments.Add "D:\test\업무일지\" & "업무일지-" & Format(Date, "yyyy.mm.dd") & ".xlsx" '윗줄과 한줄 연속된 문장
mail.Send
End Sub
'Office Tutorials > Excel' 카테고리의 다른 글
[EXCEL] VBA 암호를 삭제 (0) | 2015.03.04 |
---|---|
[EXCEL VBA] Split를 이용한 문자열 구분자로 나누기, 사용자정의 함수(function) [펌] (0) | 2013.10.23 |
[EXCEL] IFERROR - 오류 발생시 지정값으로 반환 (0) | 2013.10.22 |
[Excel VBA] 선택열 각 행 값으로 메일 작성하기 (0) | 2013.02.13 |
[엑셀VBA] 워크북의 여러 시트중 특정 시트만 새 워크북 만들기 (0) | 2012.04.10 |
[엑셀VBA] 엔터 입력으로 하이퍼링크 삭제하고 다음셀(우측)로 이동하기 (0) | 2012.04.09 |
[엑셀VBA] 하이퍼링크 제거 (휘발성) (0) | 2012.04.09 |
[엑셀VBA] 워크북의 여러 시트중 특정 시트만 새로운 워크북으로 만들기 (0) | 2012.03.28 |