Used some code I'd gotten help with in the past, its not working quite right though. Two problems with it:
1. gets stuck in the inner Do loop forever
2. fills in one blank cell, loops until nonblank cell, returns to last blank cell and starts over

Sub mellowmarshall()
Dim x As String
Dim y As Integer
On Error GoTo z
For Each cell In Range("A5:A50")
    If cell.Value = "" And cell.Offset(-1, 0) <> "" Then
        x = cell.Offset(-1, 0)
        cell.Select
            Do Until ActiveCell.Value <> ""
                cell.Value = x
                ActiveCell.Offset(1).Select
            Loop
    End If
Next cell
            
z:
End Sub
excelforum vb example.xlsm