If you're looking for a VBA-solution, use the cell's .Interior.TintAndShade property.
Here is a quick macro that you can use which calculates a gradient fill based on the number of cells in the column. This should apply an even gradient, e.g.:

Sub Macro3()
Dim firstCell As Range 'the first cell, and the cell whose color will be used for all others.
Dim cellColor As Long 'the cell color that you will use, based on firstCell
Dim allCells As Range 'all cells in the column you want to color
Dim c As Long 'cell counter
Dim tintFactor As Double 'computed factor based on # of cells.
Set firstCell = Range("A1")
cellColor = firstCell.Interior.Color
Set allCells = Range("A1:A10")
For c = allCells.Cells.Count To 1 Step -1
allCells(c).Interior.Color = cellColor
allCells(c).Interior.TintAndShade = _
(allCells.Cells.Count - (c - 1)) / allCells.Cells.Count
Next
End Sub
Edited to fill gradient from light-to-dark. If you prefer dark to light, then do:
allCells(c).Interior.TintAndShade = _
(c-1) / allCells.Cells.Count