vb脚本用数据填充单元格,直到它看到一个填充的单元格,然后继续

时间:2014-07-09 14:36:57

标签: excel excel-vba vbscript vba

下午好,

我正在尝试创建一个VBscript,我可以将其添加到excel中,它将搜索数据列,然后将该数据复制到它下面的每一行,直到它看到填充的单元格执行相同的操作。

这可能吗?

1 个答案:

答案 0 :(得分:0)

使用前面的非空值

填充集合(数组,列,范围)中的空容的算法
  1. init(默认值)v
  2. 对于集合中的每个元素
  3. 如果e为空,则用v替换e,否则用非空e更新v
  4. 演示代码:

    Option Explicit
    
    Dim a ' array to fill
    For Each a In Array(Split("1  47 5 "), Split("  3  5 0"))
        WScript.Echo 0, Join(a, "*")
        Dim v : v = "0" ' value to fill empties
        Dim i
        For i = 0 To UBound(a)
            If "" = a(i) Then ' found empty, fill with v
               a(i) = v
            Else ' found non-empty, update v
               v = a(i)
            End If
        Next
        WScript.Echo 1, Join(a, "*")
    Next
    

    输出:

    cscript 24656643.vbs
    0 1**47*5*
    1 1*1*47*5*5
    0 **3**5*0
    1 0*0*3*3*5*0