본문 바로가기

전체 글1609

폴더열기 Sub OpenFolder() Dim folderPath As String folderPath = "C:\YourFolderPath" ' 여기에 열고자 하는 폴더 경로를 입력하세요. If Dir(folderPath, vbDirectory) "" Then Shell "explorer.exe " & folderPath, vbNormalFocus Else MsgBox "폴더를 찾을 수 없습니다: " & folderPath End If End Sub 2024. 7. 8.
vba 필터해제 후 처리 1. 특정 파일 복사 ```vba Sub CopyFiles() Dim fso As Object Dim sourceFolder As String Dim destFolder As String Dim file As Object Dim fileName As String sourceFolder = "C:/abc/" destFolder = "C:/vba/결과/취합/" Set fso = CreateObject("Scripting.FileSystemObject") If Not fso.FolderExists(destFolder) Then fso.CreateFolder destFolder End If For Each file In fso.GetFolder(sourceFolder).Files If InStr(file.Nam.. 2024. 7. 8.
vba 파일 취합 엑셀 VBA에서 ADO를 사용하여 파일을 직접 열지 않고 작업을 수행하는 것은 복잡할 수 있습니다. 하지만 가능한 한 간단하게 작성해 보겠습니다. 전체 코드는 길어질 수 있으므로, 각 단계를 최대한 간략하게 설명하고 제공하겠습니다. 1. 파일 복사 ```vba Sub CopyFiles() Dim fso As Object Dim srcFolder As String, destFolder As String Dim file As Object, folder As Object srcFolder = "C:\abc\" destFolder = "C:\vba\결과\취합\" Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder(srcF.. 2024. 7. 8.
취합 Sub ConsolidateData() Dim folderPath As String Dim fileName As String Dim newWB As Workbook Dim ws As Worksheet Dim conn As Object Dim rs As Object Dim lastRow As Long ' 폴더 경로 설정 folderPath = "C:\Your\Folder\Path\" ' 새 워크북 생성 Set newWB = Workbooks.Add Set ws = newWB.Sheets(1) ws.Cells(1, 1).Value = "파일명" ws.Cells(1, 2).Value = "데이터" ' ADO 연결 객체 생성 Set conn = CreateObject("ADODB.Connection") Set .. 2024. 7. 5.
보완 Sub ExtractDataFromFiles() Dim FolderPath As String Dim FileName As String Dim SpecificText As String Dim cn As Object Dim rs As Object Dim ws As Worksheet Dim NewBook As Workbook Dim NewSheet As Worksheet Dim Row As Long Dim Col As Long FolderPath = "C:\Your\Folder\Path\" ' 폴더 경로를 지정하세요. SpecificText = "특정글자" ' 특정 글자를 지정하세요. Set NewBook = Workbooks.Add Set NewSheet = NewBook.Sheets(1) Row = 1 C.. 2024. 7. 5.
추출 Sub ExtractDataFromFiles() Dim FolderPath As String Dim FileName As String Dim SpecificText As String Dim cn As Object Dim rs As Object Dim ws As Worksheet Dim NewBook As Workbook Dim NewSheet As Worksheet Dim Row As Long Dim Col As Long FolderPath = "C:\Your\Folder\Path\" ' 폴더 경로를 지정하세요. SpecificText = "특정글자" ' 특정 글자를 지정하세요. Set NewBook = Workbooks.Add Set NewSheet = NewBook.Sheets(1) Row = 1 C.. 2024. 7. 5.
depth고려 Sub CopyFilesContainingString(sourceFolder As String, targetFolder As String, searchString As String) Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") ' 대상 폴더가 존재하지 않으면 생성 If Not fso.FolderExists(targetFolder) Then fso.CreateFolder(targetFolder) ' 폴더 탐색 및 파일 복사 SearchAndCopyFiles fso.GetFolder(sourceFolder), searchString, targetFolder, fso, 0 MsgBox "파일 복사가 완료되었습니다!" End Su.. 2024. 7. 5.
튜닝코드 하위 폴더명에도 "특정 문자열"이 포함된 것만 탐색하도록 수정하여 탐색 시간을 단축할 수 있습니다. 이를 위해 하위 폴더를 탐색하기 전에 폴더명에 검색 문자열이 포함되어 있는지 확인하는 조건을 추가하면 됩니다. 아래는 해당 기능을 반영한 코드입니다: ```vba Sub CopyFilesContainingString(sourceFolder As String, targetFolder As String, searchString As String) Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") ' 대상 폴더가 존재하지 않으면 생성 If Not fso.FolderExists(targetFolder) Then fso.CreateFold.. 2024. 7. 5.
vba 특정경로파일 탐색 후 복사 Sub CopyFilesContainingString(sourceFolder As String, targetFolder As String, searchString As String) Dim fso As Object Set fso = CreateObject("Scripting.FileSystemObject") ' 대상 폴더가 존재하지 않으면 생성 If Not fso.FolderExists(targetFolder) Then fso.CreateFolder(targetFolder) ' 폴더 탐색 및 파일 복사 SearchAndCopyFiles fso.GetFolder(sourceFolder), searchString, targetFolder, fso MsgBox "파일 복사가 완료되었습니다!" End Sub S.. 2024. 7. 5.
vb 폴더 파일복사 Sub CopyFolderAndFiles() Dim srcFolder As String Dim destFolder As String Dim fso As Object Dim folder As Object Dim file As Object ' 소스 폴더와 대상 폴더 설정 srcFolder = "C:\abc\" destFolder = "C:\abb\" ' FileSystemObject 생성 Set fso = CreateObject("Scripting.FileSystemObject") ' 대상 폴더 생성 If Not fso.FolderExists(destFolder) Then fso.CreateFolder (destFolder) End If ' 소스 폴더 내 모든 폴더와 파일 복사 Set folder = fso.. 2024. 7. 5.
중복파일 삭제 vb Sub DeleteFiles(condition As String) Dim fso As Object Dim folder As Object Dim file As Object Dim lastModifiedFile As Object Dim folderPath As String ' 파일 시스템 객체 생성 Set fso = CreateObject("Scripting.FileSystemObject") ' 현재 폴더 경로 설정 folderPath = "C:\Your\Folder\Path" ' 실제 경로로 변경 필요 ' 폴더 객체 설정 Set folder = fso.GetFolder(folderPath) ' 가장 마지막 수정된 파일을 찾기 위한 변수 초기화 Set lastModifiedFile = Nothing ' 파일.. 2024. 7. 5.
vb2 엑셀 VBA로 파일을 열지 않고 데이터를 처리 Sub CombineExcelFiles() Dim folderPath As String Dim fileName As String Dim newWorkbook As Workbook Dim newWorksheet As Worksheet Dim lastRow As Long Dim dataRange As Range Dim dataArray() As Variant Dim conn As Object Dim rs As Object Dim sql As String ' 폴더 경로 설정 folderPath = "c:/abc/" ' 새 워크북 생성 Set newWorkbook = Workbooks.Add Set newWorksheet = newWorkbook.Sheets(1) .. 2024. 7. 5.