통합 문서 chatgpt 병합

하위 MergeWorkbooksWithDialog()
Dim MyPath를 문자열로, FilesInPath를 문자열로
Dim MyFiles()를 문자열로
FNum만큼 Dim SourceRcount
mybook을 통합 문서로, BaseWks를 워크시트로 흐리게 표시
Dim sourceRange as Range, destrange as range
Dim rnum과 같은 길이, CalcMode와 같은 길이
대상 파일을 변형으로 흐리게 표시

‘대상 파일을 선택하기 위해 열린 대화 상자를 표시합니다.


targetFile = Application.GetOpenFilename(“Excel 파일(*.xlsx), *.xlsx”)
targetFile = False이면 Sub를 종료합니다.

‘코드 속도를 높이려면 계산을 끄십시오.
CalcMode = Application.Calculation
Application.Calculation = xlCalculationManual

‘병합된 데이터를 보관할 새 통합 문서를 만듭니다.


Set BaseWks = Workbooks.Add(xlWBATWorksheet).Worksheets(1)
번호 = 1

‘병합할 통합 문서가 있는 폴더의 경로를 설정합니다.


MyPath = “C:\폴더\”

‘파일 필터를 Excel 파일로만 설정
FilesInPath=”*.xlsx”

‘파일 이름 배열 생성
If Right(MyPath, 1) <> “\” Then MyPath = MyPath & “\”
F 번호 = 0
MyFiles = Dir(MyPath & FilesInPath)
IsEmpty(MyFiles)인 경우
MsgBox “파일을 찾을 수 없습니다”
하위 종료
혹시라도

‘배열의 각 파일을 반복합니다.


내 파일에서 <> “” 실행
‘파일을 열고 원본 범위를 통합 문서의 첫 번째 워크시트로 설정
set mybook = Workbooks.Open(MyPath & MyFiles)
set sourceRange = mybook.Worksheets(1).UsedRange

‘새 통합 문서의 원본 범위에서 대상 범위로 데이터 복사
destrange = BaseWks.Range(“A” & rnum) 설정
sourceRange.복사 destrange 복사

‘다음 파일의 줄 번호를 조정
rnum = rnum + sourceRange.Rows.Count

‘원본 통합 문서 닫기
mybook.Close to save changes:=False

‘다음 파일 이름 얻기
내 파일 = 디렉토리
반지

‘계산 모드 재설정
app.Calculation = CalcMode

‘대상 범위의 열을 자동으로 조정
BaseWks.Columns.AutoFit

‘새 통합 문서 활성화
BaseWks.Parent.Activate

‘병합된 데이터를 선택한 대상 파일에 저장
BaseWks.Parent.SaveAs 개체 파일
엔드 서브