我想循环遍历Worksheet1中的A列,找到第一个具有指定文本" Oil Production"的单元格。此单元格是我希望复制到Worksheet2的数组中的第一个单元格。这个单元格和数组的大小会不时变化,因此我使用的代码也是如此。然后我将它粘贴到Worksheet2中的单元格B7中,它永远不会改变。
这是我的公式。我在第Promise.all()
行
ActiveSheet.Paste
答案 0 :(得分:-1)
调整区域大小:
Sub Test()
Dim MyRowCount As Long, MyColCount As Long
Application.ScreenUpdating = False
For Each Cell In Sheets("Sheet1").Range("A1:A" & Range("A" & Rows.count).end(xlup).row) 'This make it poll the used data rather than the whole column
If Cell.Value = "Oil Production" Then
ActiveSheet.Cells.Select
With Range(ActiveCell, Cells(ActiveCell.End(xlDown).Row, ActiveCell.End(xlToRight).column))
.Copy
MyRowCount = .Rows.Count
MyColCount = .Columns.Count
End With
Sheets("Sheet2").Select
Range("B7").Resize(MyRowCount, MyColCount).PasteSpecial xlPasteAll
'Do you need to flick back to Sheet1 after pasting?
End If
Next
End Sub
我还为你挑选了一堆选择。
Range("A1").Select
Selection.Paste
可以写成
Range("A1").PasteSpecial XLPasteAll
你可以用这种方式砍掉大多数选择,你可以看到我也用你正在复制的范围来完成它