【Excel】将分散于多个sheet中的值复制到一个sheet中

需求说明

有时候期望筛选的值位于一个Excel表格的多个sheet中
这时,期望将所有sheet中的值做一个合并

具体操作

第一步:
在工作表的第一个sheet上,点击【右键】->【插入工作表】

第二步:
在新建的sheet(位于工作簿的第一个),点击【右键】->【查看代码】

第三步:
在新打开的代码窗口中粘贴如下代码:

Sub CombineSheet()

Dim i, j, k, n As Integer
n = 1
For i = 2 To ThisWorkbook.Sheets.Count
For j = 1 To ThisWorkbook.Sheets(i).UsedRange.Rows.Count
For k = 1 To ThisWorkbook.Sheets(i).UsedRange.Columns.Count
ThisWorkbook.Sheets(1).Cells(n, k).Value = ThisWorkbook.Sheets(i).Cells(j, k).Value
Next k
n = n + 1
Next j
Next i

End Sub

注意:上面代码中的参数“i”表示从哪一个sheet开始处理,参数“j”表示从sheet的哪一行开始处理,所以如果复制的时候,不想复制每个sheet的表头,则将j的值由“1”改成“2”即可

第四步:
点击代码窗口的“三角形”按钮,执行子过程即可

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章