首页 > 解决方案 > 从多个工作表中收集数据

问题描述

我怎样才能从我的工作簿中的 9 个工作表中的 3 个中收集到这个?

Option Explicit
Sub CopyCCellVals()
 Dim sht1 As Worksheet, sht6 As Worksheet
 Dim i As Integer, lastRow As Integer, sht6Row As Integer

 sht6Row = 5
 Set sht1 = Worksheets("MAINGANG")
 Set sht6 = Worksheets("REPAIRS")
 With sht1
  lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
  For i = 5 To lastRow
  If .Cells(i, "C") = "X" Or .Cells(i, "C") = "x" Then
     sht6.Cells(sht6Row, "A") = .Cells(i, "A")
     sht6Row = sht6Row + 1
   End If
  Next
End With

结束子

标签: vba

解决方案


您可以使用 Worksheets("name").select 然后从那里操作数据?如果您还有其他事情要做,请更具体。

这也是循环工作表的代码:

Sub GetSelectedSheetsName()
    Dim ws As Worksheet

    For Each ws In ActiveWindow.SelectedSheets
         MsgBox ws.Name
    Next ws

End Sub


推荐阅读