我有以下代码选择我想要的值但是我想知道如何根据找到该值然后粘贴到特定点的另一个工作表中来复制该行。工作表2 E5。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class="textfield" id="form1" name="form1">My text here</textarea>
<div class="taglist">
<label><input type="checkbox" value="Value 1">Value 1</label>
<label><input type="checkbox" value="Value 2">Value 2</label>
<label><input type="checkbox" value="Value 3">Value 3</label>
<label><input type="checkbox" value="Value 4">Value 4</label>
<label><input type="checkbox" value="Value 5">Value 5</label>
</div>
答案 0 :(得分:1)
例如,您无法将行粘贴到单元格E5中,因为复制的行将比您允许粘贴的行更长
For Each cell In Sheets("EMAIL DATA").Range("E:E")
If cell.Value = "Rob" Then
Worksheets(2).Range("E5").EntireRow.Value = cell.EntireRow.Value
End If
Next
但是这将继续在同一排,更好的像
i = 1
For Each cell In Sheets("EMAIL DATA").Range("E:E")
If cell.Value = "Rob" Then
Worksheets(2).Cells(i, 1).EntireRow.Value = cell.EntireRow.Value
i = i + 1
End If
Next
同时考虑获取E列中的最后一个单元格,这样您就不会浪费时间迭代所有100万行,例如Sheets(1).Range("E" & Cells(Rows.Count, 5).End(xlUp).Row)
修改强>
根据你的评论
i = 1
For Each cell In Sheets("EMAIL DATA").Range("E" & Cells(Rows.Count, 5).End(xlUp).Row)
If cell.Value = "Rob" Then
Worksheets(2).Cells(i, 1).Resize(, 5).Value = Cells(cell.Row, 1).Resize(, 5).Value
i = i + 1
End If
Next