아래의 코드는 모든 하위 폴더 (모든 하위 폴더)에서 모든 Excel 통합 문서를 반복하고 각 하위 폴더에서 데이터를 복사하는 코드입니다. 모든 Excel 통합 문서 및 다른 Excel 통합 문서에 추가. 아래 코드를 Excecuting "개체가이 속성 또는 메서드를 지원하지 않습니다 : 'objsubfolder.files" "이 오류로 인해 도움이됩니다.많은 (많은) 엑셀 통합 문서의 데이터를 여러 하위 폴더에 복사하고 다른 Excel 통합 문서로 복사
명시
사용 옵션 (그리고 희미한를 먼저 사용하기 전에 즉시 모든 변수() 초기화)
을 :'Sub RunCodeOnAllXLSFiles()
Set objExcel = CreateObject("Excel.Application")
strPath = "C:\Documents and Settings\SupriyaS\Desktop\su"
pathName="xlsx"
if strPath = "" then Wscript.quit
if pathName = "" then Wscript.quit
'Creating an Excel Workbook in My Documents
Set objWorkbook2= objExcel.Workbooks.Add()
objExcel.Visible = True
objExcel.DisplayAlerts = False
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFso.GetFolder (strPath)
Set objsubFolder = objfolder.subFolders
set objfile = objsubfolder.files
for each objsubfoleder in objfolder.subfolders
For Each objFile In objsubFolders.Files
If objFso.GetExtensionName (objFile.Path) = "xlsx" Then
Set objWorkbook = objExcel.Workbooks.Open(objFile.Path)
Set objWorksheet = objWorkbook.WorkSheets(1)
objworksheet.Activate
' Select the range on Sheet1 you want to copy
objWorkbook.Worksheets("SHEET1").usedrange.Copy
objworkbook.close
Set objRange = objExcel.Range("A1")
intNewRow = objExcel.ActiveCell.Row + 3
strNewCell = "A" & intNewRow
objExcel.Range(strNewCell).Activate
' Paste it on sheet1 of workbook2, starting at A1
objWorkbook2.Worksheets("Sheet1").Range(strNewCell).PasteSpecial
Set objWorksheet = objWorkbook2.Worksheets(1)
End If
next
next
가능한 복제본 [ 많은 Excel 통합 문서에서 다른 Excel 통합 문서로 데이터 복사] (http://stackoverflow.com/questions/22784752/copying-data-from-many-excel-workbook-to-another-excel-workbook) – MP24