본문 바로가기

엑셀 VBA 파일명 일괄 변경하기

액트 2022. 7. 7.
반응형

엑셀 VBA 파일명 한꺼번에 변경하기


특정 형식으로 구성된 여러 파일들의 파일명을 일괄적으로 변경하실 때 사용하시면 편합니다.

아래 작성되는 예제는 기존 파일명이 이름, 신규 파일명이 이름+문구 입니다.

얼마든지 응용 가능하니 아래 코드 보시면서 변경하시면 됩니다.

어려우시면 댓글로 남겨 주시면 알려드리겠습니다. 

 

조건

1. 엑셀 개발 도구 탭 오픈

엑셀은 default로 개발 도구 탭이 오픈되지 있지 않습니다.

아래와 같이 조치하셔서 개발 도구 탭을 오픈하셔야 합니다.

 

 

엑셀 Sheet1 구성

 

엑셀 개발 도구 탭 오픈 방법

  1. 파일 탭 > 옵션 > 리본 사용자 지정 클릭
  2. 오른쪽 리본 메뉴 사용자 지정(B) 항목에서 개발 도구란의 체크 박스 클릭 > 확인 버튼 클릭
  3. 확인

엑셀 개발 도구 탭 오픈 방법
엑셀 개발 도구 탭 오픈 방법

 

엑셀 Visual Basic 개발 환경 오픈

  1. 엑셀 개발 도구 탭 > Visual Basic 클릭
  2. 모듈 추가

엑셀 Visual Basic 개발 환경 오픈

모듈이 안보인다면 위의 삽입 클릭 후 모듈을 선택해도 됩니다.

엑셀 Visual Basic 개발 환경 오픈

 

엑셀 Visual Bacsic 소스 코드 작성

추가된 모듈에서 작성합니다. 

전체 소스코드는 아래와 같습니다.

'파일이 있는지 확인하는 함수
Function FileChk(sFileName As String)
    Dim sChkFile As String

    sChkFile = Dir(sFileName)
    If (Len(sChkFile) > 0) Then
        FileChk = True
    Else
        FileChk = False
    End If
End Function


Sub 파일이름변경하기()
    Dim F_dir As FileDialog
    Dim F_Name As String
    Dim W_Row As Integer                
    Dim File_N As String
    Dim Response As String
    
    
    Response = MsgBox("파일명을 변경하시겠습니까?", vbYesNo)
    
    
    If Response = vbYes Then
    
        Set F_dir = Application.FileDialog(msoFileDialogFolderPicker)
        F_dir.AllowMultiSelect = False
        F_dir.Title = "파일이 있는 위치를 선택하십시오."
        F_dir.Show
        F_Name = F_dir.SelectedItems(1)
            
        W_Row = Sheet1.Range("A60000").End(xlUp).Row
        
        For i = 1 To W_Row            
                              
            File_N = F_Name & "\" & "기존파일명.pdf"		'파일이있는경로\기존파일명.pdf
            
            If (FileChk(File_N)) Then
                File_S = F_Name & "\" & "신규파일명.pdf"
                Name File_N As File_S		'실제 파일명이 변경되는 문구
            End If
        Next i
        
        MsgBox "끝"
    End If
End Sub

 

실행을 위한 버튼 만들기

  1. 개발 도구 탭 클릭 > 삽입 클릭 -> 양식 컨트롤에서 단추(양식 컨트롤) 클릭
  2. 버튼를 만들어 놓을 장소에 마우스 드래그로 원하는 크기의 버튼 생성
  3. 생성된 버튼의 매크로 지정하여 확인 버튼 클릭
  4. 생성된 버튼 확인
  5. 단추명은 마우스 우클릭하여 수정 가능합니다.

엑셀 파일 이름 일괄 변경

 

생성된 버튼을 클릭하면 매크로 실행됩니다.

 

충분히 응용하여 사용 가능하니 필요하신 기능을 댓글로 남겨 주시면 조언해 드리도록 하겠습니다.

반응형

댓글