Excel 2016 VBA에서 GetOpenFilename 메서드를 사용하는 방법

VBA 프로시저가 사용자에게 파일 이름을 요청해야 하는 경우 InputBox 함수를 사용하고 Excel 사용자가 입력하도록 할 있습니다. 그러나 대부분의 사용자는 경로, 백슬래시, 파일 이름 및 파일 확장자를 기억하기 어렵기 때문에 입력 상자는 일반적으로 이 작업에 가장 적합한 도구가 아닙니다. 다시 말해, 파일 이름을 입력할 때 엉망이 되기가 너무 쉽습니다.

이 문제에 대한 더 나은 솔루션을 위해 Application 개체의 GetOpenFilename 메서드를 사용하십시오. 이렇게 하면 코드가 전체 경로를 포함하여 유효한 파일 이름을 얻을 수 있습니다. GetOpenFilename 메서드는 친숙한 열기 대화 상자를 표시합니다(파일 → 열기 → 찾아보기를 선택하면 대화 상자 Excel이 표시됨).

GetOpenFilename 메서드는 실제로 지정된 파일을 열지 않습니다. 이 메서드는 단순히 사용자가 선택한 파일 이름을 문자열로 반환합니다. 그런 다음 파일 이름으로 원하는 작업을 수행하는 코드를 작성할 수 있습니다.

GetOpenFilename 메서드 구문

GetOpenFilename 메서드의 공식 구문은 다음과 같습니다.

object.GetOpenFilename([fileFilter], [filterIndex],
  [제목],[버튼텍스트], [다중선택])

GetOpenFilename 메서드는 아래의 선택적 인수를 사용합니다.

논쟁 그것이 하는 일
파일 필터 대화 상자에 표시되는 파일 유형
(예: *.TXT)을 결정합니다. 사용자
가 선택할 여러 필터를 지정할 수 있습니다 .
필터 인덱스 대화 상자가
기본적으로 표시하는 파일 필터를 결정합니다 .
제목 대화 상자의 제목
표시줄에 대한 캡션을 지정합니다 .
버튼텍스트 무시됨(Macintosh 버전의 Excel에서만 사용됨).
다중 선택 True인 경우 사용자는 여러 파일을 선택할 수 있습니다.

GetOpenFilename 예제

fileFilter 인수는 대화 상자의 파일 형식 드롭다운 목록에 표시되는 항목을 결정합니다. 이 인수는 파일 필터 문자열 쌍과 와일드카드 파일 필터 사양으로 구성되며 각 부분과 쌍을 쉼표로 구분합니다. 생략하면 이 인수의 기본값은 다음과 같습니다.

모든 파일(*.*), *.*

이 문자열은 쉼표로 구분된 두 부분으로 구성됩니다.

모든 파일(*.*)

그리고

*.*

이 문자열의 첫 번째 부분은 파일 형식 드롭다운 목록에 표시되는 텍스트입니다. 두 번째 부분은 대화 상자에 표시되는 파일을 결정합니다. 예를 들어 *.*는 모든 파일을 의미 합니다.

다음 예제의 코드는 사용자에게 파일 이름을 묻는 대화 상자를 엽니다. 이 절차는 5개의 파일 필터를 정의합니다. VBA 줄 연속 시퀀스는 Filter 변수를 설정하는 데 사용됩니다. 그렇게 하면 이 다소 복잡한 주장을 단순화하는 데 도움이 됩니다.

하위 GetImportFileName()
  문자열로 희미한 Finfo
  Dim FilterIndex As Long
  문자열로 희미한 제목
  Dim FileName As Variant
' 파일 필터 목록 설정
  FInfo = "텍스트 파일(*.txt),*.txt," & _
      "로터스 파일(*.prn),*.prn," & _
      "쉼표로 구분된 파일(*.csv),*.csv," & _
      "ASCII 파일(*.asc),*.asc," & _
      "모든 파일(*.*),*.*"
' 기본적으로 *.* 표시
  필터 인덱스 = 5
' 대화 상자 캡션 설정
  제목 = "가져올 파일 선택"
' 파일명 가져오기
  파일 이름 = Application.GetOpenFilename(FInfo, _
    필터 인덱스, 제목)
' 대화 상자에서 반환 정보 처리
  FileName = False이면
    MsgBox "선택된 파일이 없습니다."
  또 다른
    MsgBox "당신은 " & FileName을 선택했습니다
  종료
엔드 서브

다음은 이 절차를 실행할 때 Excel에 표시되는 대화 상자입니다. 사용하는 Windows 버전과 설정한 표시 옵션에 따라 모양이 다를 수 있습니다.

Excel 2016 VBA에서 GetOpenFilename 메서드를 사용하는 방법

GetOpen Filename 메서드는 사용자 지정 가능한 대화 상자를 표시하고 선택한 파일의 경로와 이름을 반환합니다. 파일을 열지 않습니다.

실제 응용 프로그램에서는 파일 이름으로 더 의미 있는 작업을 수행합니다. 예를 들어 다음과 같은 문을 사용하여 열 수 있습니다.

통합 문서.Open FileName

FileName 변수는 Variant 데이터 형식으로 선언됩니다. 사용자가 취소를 클릭하면 해당 변수에 부울 값(False)이 포함됩니다. 그렇지 않으면 FileName은 문자열입니다. 따라서 Variant 데이터 유형을 사용하면 두 가지 가능성이 모두 처리됩니다.

Leave a Comment

Excel에서 산점도를 만드는 방법

Excel에서 산점도를 만드는 방법

Excel에서 회귀 분석을 통해 데이터 간의 관계를 탐색하고 시각적으로 분석하는 방법을 알아보세요. 다양한 단계를 따라 쉽게 산점도를 만들 수 있습니다.

Microsoft 365 Business: Azure Information Protection을 구성하는 방법

Microsoft 365 Business: Azure Information Protection을 구성하는 방법

이 가이드를 사용하여 LuckyTemplates.com에서 Azure Information Protection을 효과적으로 구성하는 방법을 알아보세요.

SharePoint를 Power BI와 통합하는 방법

SharePoint를 Power BI와 통합하는 방법

SharePoint와 Power BI 통합 방법 및 LuckyTemplates.com에서 보고서를 SharePoint 사이트에 연결하는 다양한 방법에 대해 알아보세요.

PowerPoint 슬라이드에서 펜 및 형광펜 그림 지우기

PowerPoint 슬라이드에서 펜 및 형광펜 그림 지우기

프레젠테이션 중 펜 혹은 형광펜을 사용하여 PowerPoint 슬라이드에 그린 경우, 사용자가 다음 프레젠테이션을 위해 그림을 저장하거나 쉽게 지울 수 있도록 하는 방법을 알립니다.

스마트시트 9.1.1

스마트시트 9.1.1

Smartsheet는 프로젝트를 관리하고, 워크플로를 구축하고, 팀과 협업할 수 있는 동적 작업 플랫폼입니다.

공유 지점

공유 지점

SharePoint는 다양한 워크플로 응용 프로그램, "목록" 데이터베이스 및 기타 웹 구성 요소는 물론 보안 기능을 사용하여 비즈니스 그룹의 공동 작업을 제어하는 ​​웹 기반 공동 작업 시스템입니다.

퍼페추얼 캘린더 1.0.38/1.0.36

퍼페추얼 캘린더 1.0.38/1.0.36

반니엔 캘린더(Van Nien Calendar)는 휴대폰에서 달력 보기 애플리케이션으로, 휴대폰에서 태음태양일을 빠르게 확인하고 중요한 업무를 정리할 수 있도록 도와줍니다.

마이크로소프트 아웃룩 2021

마이크로소프트 아웃룩 2021

Microsoft Outlook은 Microsoft Corporation에서 개발한 비즈니스 및 생산성 응용 프로그램입니다.

클릭업

클릭업

ClickUp은 모든 비즈니스에서 가장 높은 평가를 받는 생산성 플랫폼 중 하나입니다. Google, Booking.com, San Diego Padres 및 Uber와 같은 대기업은 모두 ClickUp을 사용하여 직장 생산성을 높입니다.

PDF-XChange 뷰어 2.5.322.10

PDF-XChange 뷰어 2.5.322.10

PDF는 텍스트 문서를 읽고, 만들고, 보내는 데 일반적으로 사용되는 형식이 되었습니다. 결과적으로 이러한 유형의 문서화에 사용되는 프로그램 수가 증가했습니다. PDF-XChange Viewer는 점점 더 많은 PDF 뷰어 중 하나입니다.