我正在尝试创建一个循环
应该在所有工作表之间复制A1:AZ1数据,并将特殊值粘贴到新工作表中。
Sub CombineData()
Dim I As Long
Dim xRg As Range
On Error Resume Next
Worksheets.Add Sheets(1)
ActiveSheet.Name = "Count"
For I = 2 To Sheets.Count
Set xRg = Sheet1.Range("A1:AZ1")
If I > 2 Then
Set xRg = Sheets(1).Cells(xRg.Rows.Count + 1, 1)
End If
Sheets(I).Activate
ActiveSheet.Range("A1:AZ1").Copy
Next
End Sub
FaneDuru是的,您是对的,我的评论数已停止
答案 0 :(得分:2)
请尝试另一种方法。现在,它将添加一个新工作表,并在所有连续工作表中的所有连续工作表中复制“ A1:AZ1”范围的内容(作为值)。这是您需要的吗?
Sub CopyRangeFromAllSheets()
Dim sh As Worksheet, ws As Worksheet, arr As Variant, lastEmptyR As Long
Set sh = Sheets.aDD: sh.Name = "Count"
For Each ws In ActiveWorkbook.Worksheets
If ws.Name <> sh.Name Then
arr = ws.Range("A1:AZ1").Value
lastEmptyR = sh.Range("A" & Rows.count).End(xlUp).row
sh.Range("A" & lastEmptyR & ":AZ" & lastEmptyR).Value = arr
End If
Next
End Sub
由@Shoaib Ali编辑,无法发表评论:
是的,很好,谢谢,我的评论数已停止