VBA用上面的单元格替换值,直到空白和循环

时间:2016-11-27 10:31:42

标签: excel vba autofill

我希望根据上面的单元格向下填充值,直到空白单元格,这应该继续,直到没有更多内容为止,例如:参考下表,将最高值向下复制到空白,因此, '小小的msa'将复制到' inter'并且停下来,'小小的ksm'将复制到“一般',' comp'将抄下来直到' motor'。

专栏:A
小麻烦 间

小ksm
福利

预付
一般

排版
旅游
电机

编辑:这是一个大约15,000行的长列表

由于

3 个答案:

答案 0 :(得分:2)

选择您有价值'小msa'的第一个单元格,然后 - 1.按ctrl + shift + down - 选择要复制的范围 2.按ctrd +向下 - 复制值 现在你已经将'petty msa'复制到包含'inter'的单元格

为每个范围重复此过程。

答案 1 :(得分:0)

根据您的示例给出您的数据“结构”,这应该是:

Option Explicit

Sub main()
    Dim area As Range

    With Worksheets("filldown").Columns("A").SpecialCells(xlCellTypeConstants) '<--| change "filldown" to your actual worksheet name and "A" to actual index of column with data to be "filled down"
        For Each area In .Areas
            area.Value = area(1)
        Next area
    End With
End Sub

答案 2 :(得分:0)

在A1中插入一个空行。在单元格B2中粘贴以下公式并将其复制下来。

= if(A1="",A2,B1)

这应该有效