0

我正在尝试将整个列值从名为 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 列或更多列的值添加到目标工作表中的同一列(最终工作表)

4

1 回答 1

1

除非您尝试从中插入值的范围与您从中获取值的范围一样大,否则只会复制适合的数据。将您的代码更改为类似

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),类似于您决定从哪个范围复制值的操作。

于 2020-09-17T13:17:32.450 回答