파란부분 path는 직접 손으로 쓰야 합니다......ㅡㅡㅋ
디렉토리네 화일을 a열에 읽어오는 메크로가 Sub 파일이름읽기() 이고
이거실행시킨후
b열에 작업한후 Sub 다른이름저장() 메크로를 실행합니다.
b열에 바꿀명 넣으면 화일명 변경하고 비워두면 그냥 지나갑니다.
*가 있으면 삭제합니다. a열은 절대 변경하면 안돼고요
도구 메크로 비주얼베이직 에디터로 가셔서 왼쪽 탐색기창에 모듈삽입하고
아래 메크로 붙여넣으세요
Sub 파일이름읽기()
Dim mydir, Mypath, FileExt As String
Dim fs As Object
Dim sFile As Variant
Dim i, s As Integer
mydir = "H:\새 폴더\mp3\z미정리곡\21212222"
s = Len(mydir)
FileExt = "*.*" '
Set fs = Application.FileSearch ' 지정 디렉토리에서 지정한 형식의 파일을 찾음
With fs
.NewSearch
.LookIn = mydir
.Filename = FileExt
.SearchSubFolders = False
.Execute
If .FoundFiles.Count = 0 Then ' 지정 디렉토리에 파일 없을땐 끝냄
MsgBox "디렉토리에 파일이 없습니다."
End If
Range("a:b").Clear
Range("a1").Select
For i = 1 To .FoundFiles.Count
sFile = .FoundFiles(i) ' 찾은 파일
Selection.Offset(i, 0) = Right(sFile, Len(sFile) - s - 1)
Next i
End With
End Sub
Sub 다른이름저장()
Dim Oldname, NewName, mydir As String
Dim i, lastRow As Integer
Cells(Cells.Rows.Count, 1).End(xlUp).Select
lastRow = Selection.Row
mydir = "H:\새 폴더\mp3\z미정리곡\21212222"
Range("a1").Select
With Selection
For i = 1 To lastRow - 1
Oldname = .Offset(i, 0).Value
NewName = .Offset(i, 1)
Oldname = mydir & "\" & Oldname
If NewName = "*" Then
Kill Oldname
ElseIf NewName = "" Then
Else
NewName = mydir & "\" & NewName
Name Oldname As NewName
End If
Next i
파일이름읽기
End With
'매크로' 카테고리의 다른 글
filesearch 대용 (0) | 2008.10.05 |
---|---|
사진 자동입력하는 매크로 - manual/auto (0) | 2008.09.25 |
폴더 여는 매크로 (0) | 2008.09.25 |
macro 설명 (0) | 2008.09.03 |
엑셀 함수 목록 (0) | 2008.09.02 |