매크로 VBA 다른 통합문서 (엑셀파일)를 자동으로 열고 수정하는 방법
본문 바로가기
엑셀 컴퓨터 인터넷/엑셀 VBA

매크로 VBA 다른 통합문서 (엑셀파일)를 자동으로 열고 수정하는 방법

by 대충살아볼까 2024. 9. 11.

우선 엑셀 매크로 VBA가 처음이시면 아래 글을 참고하셔서 모듈을 만들어 주시면 됩니다.
 
2020.10.17 - [엑셀 컴퓨터 인터넷/엑셀 VBA] - 엑셀VBA(매크로) - 시작하기

엑셀VBA(매크로) - 시작하기

직장인들은 대부분 엑셀에 익숙하실 겁니다. 하지만, 엑셀을 잘 활용하시는 분들은 아마 드물겁니다. 프로그램을 잘 하시는 분들은 파이썬이나 C언어, 자바 등을 가지고 필요한 도구들을 만들어

dotsnlines.tistory.com

 
 
엑셀에서 다른 파일을 자동으로 열고 작업을 하고 싶을때가 있습니다.
 
일단 "천리길도 한 걸음부터"라는 마음을 가지고 VBA로 다른 엑셀파일을 여는 작업부터 해 보겠습니다.
 

 
우선, 엑셀파일을 2개를 들었습니다.
 
"통합 문서1.xlsx"에서 "통합 문서2.xlsx"를 열어 보도록 하겠습니다.
 
"통합 문서1.xlsx"에서 아래 코드를 작성합니다.
 

Sub sbTest()

filepath = "C:\Users\Administrator\Desktop\통합 문서2.xlsx"

Workbooks.Open Filename:=filepath


End Sub

 
이제 작동이 잘 되는지 확인하기 위해 "F5"를 눌러서 실행해 봅니다.
 

 
통합문서 2가 잘 열렸네요.
 
통합문서 2에 Sheet를 하나 추가해 볼까요?
 
시트 추가를 위해서 코드를 약간 수정해 보겠습니다.
 

Sub sbTest()

filepath = "C:\Users\Administrator\Desktop\통합 문서2.xlsx"

Set wb = Workbooks.Open(Filename:=filepath, ReadOnly:=False)
Set sh = wb.Sheets("Sheet2")

Sheets.Add after:=sh


End Sub

 
Workbooks.Open 메소드에서 옵션 중 ReadOlnly는 False로 해야지 수정이 가능합니다.
 
이제 'F5'를 눌러서 실행해 보겠습니다.
 

 
시트가 추가 된 것을 확인 할 수 있습니다.
 
이제는 추가된 Sheet의 탭색깔을 변경해 볼까요?
 
다시 코드를 조금 추가 해 보겠습니다.
 

Sub sbTest()

filepath = "C:\Users\Administrator\Desktop\통합 문서2.xlsx"

Set wb = Workbooks.Open(Filename:=filepath, ReadOnly:=False)
Set sh = wb.Sheets("Sheet2")

Sheets.Add after:=sh

Sheets("Sheet1").Tab.Color = vbRed
Sheets("Sheet1").Name = "추가된 시트"

End Sub

 
다시 'F5'를 눌러서 실행해 보겠습니다.
 

 
잘 실행이 되네요.

728x90

댓글