【发布时间】:2018-09-17 01:54:19
【问题描述】:
VBA 新手并尝试编写一个宏,如果 Y 列包含特定文本 (CHK),该宏将复制条目的参考编号(A 列)。我已经能够设置一个数组,该数组将检查一个单元格是否包含值 CHK,如果包含则复制参考号(然后对每个单元格重复此操作)。
我正在努力将每个单元格的值粘贴到另一个工作簿的 A 行中的下一个空单元格中。我已设法将值复制到下一个空单元格中,但我不确定如何向下移动一个单元格以进行数组的下一次遍历。而此时,每次数组运行时,单元格中的值都会被覆盖
我当前的代码如下所示:
Sub Copy_detailed_WithNum_V2()
Application.ScreenUpdating = True
Dim ws1 As Worksheet, ws2 As Worksheet
Dim SrchRng As Range, cel As Range
Set ws1 = Sheets("Detailed Register-All")
Set ws2 = Sheets("VIPP Register")
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
'Activate Detailed Reigster sheet
ws1.Activate
Set SrchRng = Range("Y:Y")
For Each cel In SrchRng
'Check if the cell contains CHK text
If InStr(1, cel.Text, "CHK") Then
'Copy rerference number if entry has CHK value
cel.Offset(0, -24).Copy
'Activate VIPP Register sheet
ws2.Activate
'Paste in the next empty cell in Coulmn A
Cells(lastRow + 1, 1).PasteSpecial xlPasteValues
End If
'Check next cell
Next cel
End Sub
【问题讨论】:
-
您没有限定
Cells和Range的实例