기술나눔

VBA에서 Excel 통합 문서를 열고 저장하고 닫는 방법

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

머리말

이 섹션에서는 VBA 메서드를 사용하여 Excel 통합 문서를 열고, Excel 통합 문서를 저장 및 닫고, 각각 Open, Save 및 Close 메서드를 사용하는 방법을 소개합니다.


1. Open 메서드를 사용하여 통합 문서를 엽니다.

Workbooks.Open(파일 이름, UpdateLinks, 읽기 전용, 형식, 비밀번호, 쓰기 권한 비밀번호, 무시-읽기 전용 권한, 원본, 구분 기호, 편집 가능, 알림, 변환기, AddToMru, 로컬, 손상-로드)
虽参数较多,但只有FileName为必填参数,表示需要打开的工作簿文件名,关于参数说明请参考下表:

매개변수설명하다
파일 이름열어야 하는 통합 문서의 파일 이름과 파일의 절대 경로가 필요합니다.
업데이트 링크 통합 문서의 외부 참조(링크)가 업데이트되는 방법을 지정합니다.가능한 값은 0 또는 3이며, 이는 각각 통합 문서를 열 때 외부 참조를 업데이트하지 않음을 의미하고, 통합 문서를 열 때 외부 참조를 업데이트한다는 의미입니다.
읽기 전용True인 경우 통합 문서를 읽기 전용 모드로 여는 것을 의미합니다.
체재 텍스트 파일을 열 때 이 매개변수를 사용하여 구분 기호를 지정합니다. 가능한 값은 1(탭), 2(쉼표), 3(공백), 4(세미콜론), 5(없음), 6(Delimiter 매개변수로 지정된 사용자 정의 문자)입니다.
비밀번호 열려는 통합 문서에 열기 암호가 설정되어 있는 경우 이 매개변수를 사용하여 암호를 제공합니다.비밀번호가 설정되었지만 이 매개변수가 채워지지 않은 경우 사용자에게 비밀번호를 입력하라는 대화 상자가 나타납니다.
쓰기재비밀번호열려는 통합 문서에 구조를 보호하기 위한 비밀번호가 있는 경우 이 매개변수를 사용하여 해당 비밀번호를 제공하십시오.
무시읽기전용권장True이면 읽기 전용 권장 정보를 표시하지 않는다는 의미입니다.
기원 텍스트 파일을 열 때 이 매개변수를 사용하여 파일이 시작된 운영 체제를 표시하고 코드 페이지와 캐리지 리턴/줄 바꿈을 올바르게 처리합니다. 가능한 값은 xlMacintosh, xlWindows, xlMSDOS 상수입니다.
구분 기호텍스트 파일을 열 때 Format 매개변수가 6으로 설정된 경우 이 매개변수를 사용하여 문자를 구분 기호로 지정합니다. 여러 문자가 설정된 경우 기본적으로 첫 번째 문자만 사용됩니다.
편집 가능열려는 파일이 Excel 4.0 추가 기능인 경우 이 매개변수의 값이 True이면 추가 기능은 표시되는 창입니다. False이거나 이 매개변수가 무시되면 추가 기능이 숨겨진 상태로 열립니다. 모드이며 표시할 수 없습니다. 이 매개변수는 버전 5.0 이상에서 사용할 수 없습니다.
알림 열려는 파일을 읽기-쓰기 모드로 열 수 없는 경우, 이 매개변수의 값이 True이면 해당 파일을 파일 알림 목록에 추가할 수 있습니다. Excel은 읽기 전용 모드로 파일을 열고 파일 알림 목록을 폴링하여 파일을 사용할 수 있게 되면 사용자에게 알립니다.이 매개변수의 값이 False이거나 생략되면 알림이 요청되지 않으며 사용할 수 없는 파일을 열 수 없습니다.
변환기 파일을 열 때 처음 사용하려고 시도한 파일 변환기의 인덱스 번호입니다. 지정된 파일 변환기에서 파일이 인식되지 않으면 다른 변환기를 사용해 보십시오.
AddToMru 이 매개변수의 값이 True이면 해당 작업은 최근에 사용한 파일 목록에 추가되지 않습니다. 기본값은 거짓입니다
현지의이 매개변수의 값이 True이면 파일은 Excel 언어(제어판 설정 포함)로 저장됩니다. 기본값은 False이며 파일은 VBA 언어로 저장됩니다.
손상된 로드 사용 가능한 값은 상수 xlNormalLoad, xlRepairFile 및 xlExtractData이며, 이는 각각 통합 문서를 정상적으로 열고, 통합 문서를 복구하려고 시도하고, 통합 문서의 데이터를 복원하려고 시도하는 것을 의미합니다. 기본값은 xlNormalLoad입니다.
예 1: Excel 통합 문서 열기
Sub OpenExcelFile()
    
    Dim strFileName As String
    ' 定义文件名称
    strFileName = "D:VBAEmployee.xlsx"
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFileName
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
예 2: 현재 경로에서 Excel 통합 문서 열기
Sub OpenExcelFile()

    Dim strFileName As String
    Dim strFilePath
    
    ' 定义文件名称
    strFileName = "Employee.xlsx"
    ' 获取当前路径
    strFilePath = ThisWorkbook.Path
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFilePath & "" & strFileName
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

2. 파일을 저장하고 닫습니다.

엑셀 통합 문서를 열어서 내용을 조작한 후, 저장하고 닫고 싶을 때 Save and Close 메소드를 이용하면 됩니다.

예: 현재 경로에서 Employee.xlsx 파일을 연 후 Sheet1의 셀 A1에 현재 날짜를 쓴 후 Employee.xlsx 파일을 저장하고 닫습니다. 전체 코드는 다음과 같습니다.
Sub WriteCurrentDate()
    
    ' 申明变量
    Dim strFileName As String
    Dim strFilePath
    Dim ws As Worksheet
    Dim wb As Workbook
    
    ' 定义文件名称
    strFileName = "Employee.xlsx"
    ' 获取当前路径
    strFilePath = ThisWorkbook.Path
    
    ' 打开工作簿
    Workbooks.Open Filename:=strFilePath & "" & strFileName
    
    ' 定义sheet1工作表对象以及当前打开的工作簿对象
    Set ws = ActiveWorkbook.Worksheets("Sheet1")
    Set wb = ActiveWorkbook
    
    ' A1单元格写入当前日期
    ws.Range("A1").Value = Date
    
    ' 保存并关闭文件
    wb.Save
    wb.Close
    
End Sub
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28