将范围的内容(使用公式)作为行复制或移动到另一个范围的底部

问题描述 投票:0回答:2

我需要帮助。我正在为我的公司制作一些自动化模板,但我很困惑。

我正在尝试将一个范围(行)的内容移动到另一个范围的末尾。

范围从 AI7 到 AR 列的最后一行(范围的第一行是 AI7:AR7,最后一行数据结束)。将此数据附加到 B:K 范围的底部 这些列表的范围因项目而异,但起始单元格始终从第 7 行开始。所以简单地说,我希望将 AI:AR 复制到 B:K

的底部

范围 B:K 的底部

The Bottom of Range B:K

范围的起点 AI7:AR

The Beginning of Range AI7:AR

我希望将 AI:AR 行的内容附加到 B:K 的底部。我看到的问题是因为我使用公式,所以单元格不完全是“空”

excel vba copy append
2个回答
0
投票

试试

Sub CopyValues()
    Dim lastRow As Long, i
    lastRow = Range("B" & Rows.Count).End(xlUp).row + 1
    
    For i = 7 To Range("AI" & Rows.Count).End(xlUp).row
        Range("B" & lastRow + i - 7).value = Range("AI" & i).value
        Range("C" & lastRow + i - 7).value = Range("AJ" & i).value
        Range("D" & lastRow + i - 7).value = Range("AK" & i).value
        Range("F" & lastRow + i - 7).value = Range("AM" & i).value
        Range("G" & lastRow + i - 7).value = Range("AN" & i).value
        Range("H" & lastRow + i - 7).value = Range("AO" & i).value
        Range("J" & lastRow + i - 7).value = Range("AQ" & i).value
        Range("K" & lastRow + i - 7).value = Range("AR" & i).value
    Next i
    MsgBox " Copy Complete."
End Sub

0
投票

这里暂时尝试一下,没有完全了解情况。

如果可以选择移动已经在 B:K 范围内的公式。假设实际数据(不是标题)从单元格 AI7 开始,并且列 AI:AR 中没有其他数据。

在您要附加数据的行

@B列试公式:

=$AI$7:INDEX($AI:$AK,COUNTA($AI:$AI)+5,3)

@F列试公式:

=$AM$7:INDEX($AM:$AO,COUNTA($AM:$AM)+5,3)

@列J试公式:

=$AQ$7:INDEX($AQ:$AR,COUNTA($AQ:$AQI)+5,3)

如果你使用的是 365 版本的 Excel,应该可以工作,对于旧版本来说有点棘手。

© www.soinside.com 2019 - 2024. All rights reserved.