Vba: 통합 문서가 열려 있는지 확인(예제 포함)
VBA에서 다음 구문을 사용하여 특정 통합 문서가 현재 열려 있는지 확인할 수 있습니다.
SubCheckWorkbookOpen ()
Dim resultCheck As Boolean
Dim wb As Workbook
Dim specific_wb As String
On Error Resume Next
specific_wb = InputBox("Check if this workbook is open:")
Set wb = Application.Workbooks.Item(specific_wb)
resultCheck = Not wb Is Nothing
If resultCheck Then
MsgBox “Workbook is open”
Else
MsgBox “Workbook is not open”
End If
End Sub
이 매크로가 실행되면 사용자가 Excel 통합 문서의 이름을 입력할 수 있는 입력 상자가 나타나고 매크로는 다음 결과 중 하나가 포함된 메시지 상자를 생성합니다.
- “파일이 열려있습니다”
- “파일이 열려있지 않습니다”
다음 예에서는 실제로 이 구문을 사용하는 방법을 보여줍니다.
예: VBA를 사용하여 통합 문서가 열려 있는지 확인하는 방법
현재 다음 이름을 가진 두 개의 통합 문서가 열려 있다고 가정해 보겠습니다.
- my_workbook1.xlsx
- my_workbook2.xlsx
my_workbook1.xlsx 라는 통합 문서가 현재 열려 있는지 확인하고 싶다고 가정해 보겠습니다.
이를 위해 다음 매크로를 생성할 수 있습니다:
SubCheckWorkbookOpen ()
Dim resultCheck As Boolean
Dim wb As Workbook
Dim specific_wb As String
On Error Resume Next
specific_wb = InputBox("Check if this workbook is open:")
Set wb = Application.Workbooks.Item(specific_wb)
resultCheck = Not wb Is Nothing
If resultCheck Then
MsgBox “Workbook is open”
Else
MsgBox “Workbook is not open”
End If
End Sub
이 매크로를 실행하면 입력 상자에 my_workbook1.xlsx를 입력할 수 있는 상자가 나타납니다.
확인을 클릭하면 매크로가 다음 메시지 상자를 생성합니다.
매크로는 “통합 문서가 열려 있음”을 올바르게 표시하여 해당 이름의 통합 문서가 현재 열려 있음을 나타냅니다.
이제 현재 열려 있지 않은 통합 문서의 이름을 입력했다고 가정해 보겠습니다.
확인을 클릭하면 매크로가 다음 메시지 상자를 생성합니다.
매크로는 해당 이름의 통합 문서가 현재 열려 있지 않음을 나타내기 위해 “통합 문서가 열려 있지 않음”을 올바르게 표시합니다.
추가 리소스
다음 자습서에서는 VBA에서 다른 일반적인 작업을 수행하는 방법을 설명합니다.
VBA: 통합 문서의 시트 수를 계산하는 방법
VBA: 여러 열을 삽입하는 방법
VBA:여러 줄을 삽입하는 방법