如何解决如何在IF语句后使用最后2行设置工作表之间的值
我试图将名为hey的工作表中的全部列值复制并粘贴到名为final的工作表中的其他列中。
我不想使用复制,粘贴或选择选项。但是,我的代码仅复制第一行。
IntLastRow = Sheets("hey").Cells(Cells.Rows.Count,"A").End(xlUp).Row
' IntRLastRow = Sheets("Interdiction Review").Cells(Cells.Rows.Count,"A").End(xlUp).Row
If Sheets("hey").Range("H2") = "" Then
Sheets("Final").Range("A2").Value = Sheets("hey").Range("G2:G" & IntLastRow).Value
ElseIf Sheets("hey").Range("H2") <> "" Then
Sheets("Final").Range("A2").Value = Sheets("hey").Range("H2:H" & IntLastRow).Value
EndIf
也许您知道我在做什么错吗?
我需要将日期从2列或更多列复制到其他工作表中的另一列。
但是,我不确定是否可以在同一行中使用最后2行。 我正在尝试这段代码,但只粘贴了1行的值。
intrlastrow = Sheets("Final").Cells(Cells.Rows.Count,"A").End(xlUp).Row + 1
Debug.Print intrlastrow
If Sheets("hey").Range("AJ2") = "" Then
Sheets("Final").Range("A" & intrlastrow,"A" & IntLastRow).Value = Sheets("hey").Range("AI2:AI" & IntLastRow).Value
ElseIf Sheets("hey").Range("AJ2") <> "" Then
Sheets("Final").Range("A" & intrlastrow,"A" & IntLastRow).Value = Sheets("hey").Range("AJ2:AJ" & IntLastRow).Value
End If
我需要将名为hey的工作表中的2列或更多列的值添加到目标工作表(最终工作表)的同一列中
解决方法
除非您尝试插入值的范围与您从中获取值的范围一样大,否则仅复制适合的数据。将代码更改为类似
Option Explicit
Sub test()
Dim IntLastRow As Long
IntLastRow = Sheets("Hey").Cells(Cells.Rows.Count,"A").End(xlUp).Row
' IntRLastRow = Sheets("Interdiction Review").Cells(Cells.Rows.Count,"A").End(xlUp).Row
If Sheets("Hey").Range("H2") = "" Then
Sheets("Final").Range("A2:A" & IntLastRow).Value = Sheets("Hey").Range("G2:G" & IntLastRow).Value
ElseIf Sheets("Hey").Range("H2") <> "" Then
Sheets("Final").Range("A2:A" & IntLastRow).Value = Sheets("Hey").Range("H2:H" & IntLastRow).Value
End If
End Sub
应该可以解决问题。
您可能会注意到,我已将Sheets("Final").Range("A2")
更改为Sheets("Final").Range("A2:A" & IntLastRow)
,这与您决定要从中复制值的范围所做的操作类似。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。