使用VBA合并多表數(shù)據(jù)時(shí),合并區(qū)域列數(shù)不定怎么辦
發(fā)布時(shí)間:2022-11-04 09:57 [ 我要自學(xué)網(wǎng)原創(chuàng) ] 發(fā)布人: 秋文-27173 閱讀: 1390

要解決本例中的問(wèn)題,可以將過(guò)程改寫為:

Sub 合并多表數(shù)據(jù)()
Dim EndRow As Long, DataArr As Variant, ToRng As Range
Dim ToSht As Worksheet, Sht As Worksheet
Set ToSht = Worksheets("匯總結(jié)果") '變量ToSht是保存匯總結(jié)果的工作表
ToSht.Rows("2:1048576").Clear '清除表中原有數(shù)據(jù)
Dim EndCol As Long '保存合并區(qū)域的最后一列列號(hào)
For Each Sht In Worksheets
If Sht.Name <> ToSht.Name Then '排除保存匯總結(jié)果的工作表
EndRow = Sht.Range("A1048576").End(xlUp).Row
EndCol = Sht.UsedRange.Columns.Count '最后一列列號(hào)
DataArr = Sht.Range(Sht.Cells(2, "A"), Sht.Cells(EndRow, EndRow)).Value
Set ToRng = ToSht.Range("A1048576").End(xlUp).Offset(1, 0)
ToRng.Resize(UBound(DataArr, 1), EndCol) = DataArr
End If
Next Sht
End Sub

Excel VBA入門教程2020
我要自學(xué)網(wǎng)商城 ¥60 元
進(jìn)入購(gòu)買
文章評(píng)論
0 條評(píng)論 按熱度排序 按時(shí)間排序 /350
添加表情
遵守中華人民共和國(guó)的各項(xiàng)道德法規(guī),
承擔(dān)因您的行為而導(dǎo)致的法律責(zé)任,
本站有權(quán)保留或刪除有爭(zhēng)議評(píng)論。
參與本評(píng)論即表明您已經(jīng)閱讀并接受
上述條款。
V
特惠充值
聯(lián)系客服
APP下載
官方微信
返回頂部
分類選擇:
電腦辦公 平面設(shè)計(jì) 室內(nèi)設(shè)計(jì) 室外設(shè)計(jì) 機(jī)械設(shè)計(jì) 工業(yè)自動(dòng)化 影視動(dòng)畫 程序開發(fā) 網(wǎng)頁(yè)設(shè)計(jì) 會(huì)計(jì)課程 興趣成長(zhǎng) AIGC