excel宏列自动填充

时间:2014-02-17 12:23:06

标签: excel vba excel-vba

我有一个电子表格,我正在清理并使用宏来帮助。我的专栏'C'有温度数据。与所有数据一样,有一些缺失。如何编写一个可以用以前的数据自动填充缺失点的宏?

例如:

  C                                       C

1  37                                   1  37
2  35                                   2  35
3                   -------->           3  35  
4  37                                   4  37
5  36                                   5  36

现货C3已填充C2的数据。

感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

你真的需要VBA吗?

这样做

  1. 选择Col C
  2. Ctrl + G
  3. 点击Special
  4. 下一步点击Blanks
  5. 点击确定
  6. 现在选择所有空单元格。按 = 键,然后按向上箭头键
  7. 最后按 Ctrl + Tab + Enter ,您就完成了。
  8. <强>截图

    enter image description here

答案 1 :(得分:2)

尝试一下:

Sub FixC()
    Dim N As Long, i As Long
    N = Cells(Rows.Count, "C").End(xlUp).Row
    For i = 2 To N
        If Cells(i, "C") = "" Then
            Cells(i, "C") = Cells(i - 1, "C")
        End If
    Next i
End Sub

答案 2 :(得分:0)

我该怎么写这个宏:
这仅包含片段。

遍历列中的所有单元格:
for each cell in ActiveSheet.Columns(1).Cells

如果单元格值不为空 - >将值保存到变量
If cell.value <> Empty then lastCellValue = cell.value

如果单元格值为空 - >将保存的单元格值写入单元格
Else cell.value = lastCellValue

也:
如果一行中多于x(例如20个)的单元格为空,则从循环中断开