有没有办法在第一个空单元格上方选择公式并向下粘贴到最后一个完整单元格?

时间:2012-09-24 12:49:56

标签: excel excel-vba vba

在这个公式中:

With Intersect(wsDAO.UsedRange, wsDAO.Columns("R"))
            .AutoFilter 1, "<>Same"
            With Intersect(.Offset(2).EntireRow, .Parent.Range("B:O"))
                .Copy wsDAR.Cells(Rows.Count, "B").End(xlUp).Offset(1)
                .EntireRow.Delete
            End With
            .AutoFilter
        End With

它允许我从列R中的wsDAO获取单元格,除了单词“Same”之外,将副本放到另一页'wsDAR'并删除原始单词。

我想做什么,我不知道从哪里开始,但我在想的是使用脚本的这一部分:

lastrow = wsDAO.Range("A" & Rows.Count).End(xlUp).Row

With Intersect(.Offset(2).EntireRow, .Parent.Range("B"))
     .Copy wsDAO.Cells(Rows.Count, "B").End(xlUp).Offset(1)
End With

并使用它在上面的公式中我有一个单元格并将其复制到最后一行,其中包含数据。

我只是不知道从哪里开始,我想如果我从另一个单元格中复制了数据但由于'.Copy'会覆盖保存的任何内容而无效。

有人可以帮我吗?我知道我解决问题只有几行,但我似乎无法绕过它。

任何帮助都会得到帮助。

1 个答案:

答案 0 :(得分:0)

从您的示例文件中,您希望将I1中的公式复制到第I列中的任何空单元格。以下代码行应该执行此操作:

lastrow = wsDAO.Cells(Rows.Count, "I").End(xlUp).Row

wsDAO.Range("I1:I" & lastrow).SpecialCells(xlCellTypeBlanks).FormulaR1C1 _
    = wsDAO.Cells(1, "I").FormulaR1C1