반응형
VBA를 사용하다 보면 엑셀 파일.
즉, 워크북을 변수로 지정해야 될 필요가 있습니다.
예를 들면 다른 파일에 있는 무엇인가를 참조해야 되는 경우겠지요.
그러다 보면 어떤 문제가 있냐 하면...
현재 실행되어 있는 엑셀 파일 일 수도 있고, 현재 실행되지 않은 엑셀 파일 일 수도 있습니다.
현재 실행 상태라면 해당 워크북을 찾아서 변수에 저장하면 되고
현재 미실행 상태라면 해당 워크북을 실행한 뒤 변수에 저장하면 됩니다.
그래서 해당 내용을 코드로 표현하면
Sub FileLoad()
Dim WB As Workbook '워크북 저장할 변수
Dim ThisWB As Workbook
Set ThisWB = ThisWorkbook
On Error Resume Next
Filename = "파일이름.xlsm" '확장자까지 모두 포함
Set WB = Workbooks(Filename)
On Error GoTo 0
If WB Is Nothing Then
OpenFile = "C:\ABC\파일이름.xlsm" '여기는 폴더 주소까지 포함
Set WB = Workbooks.Open(OpenFile)
End If
ThisWB.Activate '이렇게 하면 원래 엑셀 파일을 활성화
WB.Activate '이렇게 하면 파일이름.xlsm 파일을 활성화
End If
End Sub
사실 엑셀파일을 이동시킬 이유는 크지 않지만... 뭐 나름 편리합니다.
반응형
'엑셀 > VBA' 카테고리의 다른 글
VBA로 특정 열 중복 데이터 체크하기 (2) | 2024.11.09 |
---|---|
VBA로 해당 폴더 내 모든 하위 폴더까지 있는 모든 파일 이름 찾기 (1) | 2024.11.03 |
VBA에서 엑셀 조건부 서식 모두 지우기 및 중복값 규칙 만들기 (0) | 2024.06.17 |
VBA 사진 추가하는 방법 (Shapes.AddPicture) (1) | 2024.04.07 |
Selenium에서 Select 선택 된 값 불러오기 (0) | 2024.03.03 |
댓글