excel 将区域的内容作为行复制或移动到另一个区域的底部(使用公式

rqcrx0a6  于 2023-05-01  发布在  其他
关注(0)|答案(2)|浏览(190)

我需要帮助我正在为我的公司开发一些自动化模板,但我被难倒了。
我正在尝试将一个范围(行)的内容移动到另一个范围的末尾。
更新:我删除了很多我的帖子,因为我试图找到一个工作周围,将简化所需的信息。
我有2组列(Q,R,S)和(AT,Au,AV),从第7行开始。我希望将两组数据复制到一列中,以便:Q、AT转化为AX、R、Au转化为AY,以及S、AV转化为AZ)。
我尝试了k1dr0ck的公式,它在一定程度上起作用。由于B:K列中的单元格包含公式,因此复制文本移动到底部,超过1000行。
列AX、AY、AZ不包含任何信息。因此,我希望将这两列从各自的列表中组合起来,并将它们追加到一个列表中。
Source A, Source B, and their destination

k10s72fa

k10s72fa1#

这里尝试一下暂时没有完全了解情况。
如果可以选择向下移动已经在范围B:K下的公式。假设实际数据(不是标题)从单元格AI 7开始,并且在列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,应该可以工作,对于旧版本来说有点棘手。
我相信k1 dr 0 ck的VBA方法会更合适,甚至允许插入空行,通过将现有行(包含公式)向下推来追加数据。
在我的回答中使用公式方法,因为我看到了问题标题中的(使用公式)部分。

jobtbby3

jobtbby32#

如果你不想要公式,试试

Sub AppendColumns()
    Dim lastRow As Long
    lastRow = Cells(Rows.Count, "Q").End(xlUp).Row ' find the last row of column Q
    
    Dim i As Long
    For i = 7 To lastRow ' loop through each row starting at row 7
        Cells(i, "AX").Value = Cells(i, "Q").Value & "--" & Cells(i, "AT").Value
        Cells(i, "AY").Value = Cells(i, "R").Value & "--" & Cells(i, "AU").Value
        Cells(i, "AZ").Value = Cells(i, "S").Value & "--" & Cells(i, "AV").Value
    Next i
End Sub

相关问题