我想使用上述单元格的值填写所有空单元格

state  name
IL     Mike
       Sam
CA     Kate
       Bill
       Leah


应该如下

   state  name
    IL     Mike
    IL     Sam
    CA     Kate
    CA     Bill
    CA     Leah


我尝试了以下

Sub split()
Dim columnValues  As Range, i As Long

Set columnValues = Selection.Area

Set i = 1
For i = 1 To columnValues.Rows.Count
    If (columnValues(i) = "") Then
    columnValues(i) = columnValues(i - 1)
    End If
Next

End Sub


设置i时出现错误。如何修改我的代码

最佳答案

这是因为i应该定义为i=1。尽管代码还有其他一些问题。我将其更改为以下内容:

Sub split()
    Dim columnValues  As Range, i As Long

    Set columnValues = Selection

    For i = 1 To columnValues.Rows.Count
        If columnValues.Cells(i, 1).Value = "" Then
            columnValues.Cells(i, 1).Value = columnValues.Cells(i - 1, 1).Value
        End If
    Next
End Sub

09-25 17:45