使用第一个空白上方的单元格中的值填充非连续的空白单元格

Rod*_*Rod 8 excel worksheet-function

我有一个如下列:

1 red
2 blue
3 red
4 
5 blue
6
7
8 white
Run Code Online (Sandbox Code Playgroud)

空白指的是它上面的记录.因此#4将与红色相关联,而6和7将为蓝色.

是否有一种简单的方法可以填充整个色谱柱的空白?

Dic*_*ika 15

  • 选择A1:A8.
  • F5显示" 转到"对话框.
  • 单击特殊 .....选择空白,然后单击确定.

这将选择一个不连续的空白单元格范围.

  • 然后,在不选择任何其他内容的情况下,键入=A3并按 + .
  • 这将在所有空白单元格中输入一个数组公式,引用它上面的单元格.
  • 重新选择A1:A8,然后编辑 - 复制.
  • 然后编辑 - 选择性粘贴 - 值.而且你们都准备好了.

注意,=A3指的是第一个空白单元格上方的单元格.

如果你想用宏来做,你可以遍历单元格并填写空单元格.

Public Sub FillBlanks()

    Dim rColumn As Range
    Dim rCell As Range

    If TypeName(Selection) = "Range" Then
        For Each rColumn In Selection.Columns
            For Each rCell In rColumn.Cells
                If rCell.Row > rColumn.Cells(1).Row Then
                    If IsEmpty(rCell.Value) Then
                        rCell.Value = rCell.Offset(-1).Value
                    End If
                End If
            Next rCell
        Next rColumn
    End If
End Sub
Run Code Online (Sandbox Code Playgroud)