亞寵展、全球?qū)櫸锂a(chǎn)業(yè)風向標——亞洲寵物展覽會深度解析
654
2025-04-02
EXCEL VBA 跨表合并多個文件
‘選擇一個目錄,將目錄中的所有EXCEL文件導入當前工作表
‘這些EXCEL文件最好格式能一樣,這里是每個文件是同一個格式
Sub 批量()Dim FD, str$, arrSet FD = Application.FileDialog(msoFileDialogFolderPicker)If FD.Show = -1 Then t = FD.SelectedItems(1) Else Exit Sub ‘如果沒選擇文件夾則退出Application.ScreenUpdating = FalseCells.NumberFormatLocal = "@"str = Dir(t & "\*.xl*") ‘查找格式為EXCEL的文件While Len(str) > 0 ‘文件名不為空時Workbooks.Open (t & IIf(Right(t, 1) = "", "", "") & str) ‘打開工作簿
With ActiveWorkbook.ActiveSheet.Range(.Cells(2, "l"), .Cells(.[a65536].End(3).Row, "l")) = "’" & Left(str, Len(str) – IIf(Right(str, 1) = "x", 5, 4))arr = .UsedRangeWorkbooks(str).Close False ‘關(guān)閉工作薄
Kill (t & IIf(Right(t, 1) = "", "", "") & str) ’刪除工作?。ㄈ绻?a target="_blank" href="http://m.bai1xia.com/news/tags-510.html"style="font-weight:bold;">刪除,省去這一步)
End With
With ActiveSheetrw = .[a65536].End(3).Row + 1.Cells(rw, 1).Resize(UBound(arr, 1), UBound(arr, 2)) = arr ‘將數(shù)據(jù)寫入當前工作表End Withstr = Dir() ‘查找下一個文件WendIf [a1] = "" Then Rows(1).Delete ‘如果A1為空,刪除第一行Application.ScreenUpdating = TrueEnd Sub
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔相應法律責任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。