I don't believe you can assign range values to an array in this manner. You can, however do this:
Dim vArray As Range
Set vArray = Range("h1:h10")
after which you can refer to the cells of H1:H10 using vArray(1), vArray(2), etc.
But keep in mind that now the elements of vArray are Range objects, so that vArray(1) is a cell and setting x = vArray(1) puts the value of H1 into x because the Value property of a Range object is the default value. But you could also have x = vArray(1).Interior.ColorIndex to set x to the color index of the cell's fill color. vArray is now essentially a pointer to the range that allows you to refer to the range's cells in array notation.