Вам необходимо применить парантаж к ячейкам () внутри диапазона .:
Worksheets("Sheet1").range(Worksheets("Sheet1").Cells(10, col_ref),Worksheets("Sheet1").cells(20,col_ref)).Select
или использовать с, чтобы сократить:
With Worksheets("Sheet1")
.range(.Cells(10, col_ref),.cells(20,col_ref)).Select
End with
Примечание Я предполагаю, что этодля практики, выбор диапазона для того, чтобы что-то сделать с ним - это потраченная впустую энергия, просто сделайте то, что вы хотите с диапазоном.
With Worksheets("Sheet1")
.range(.Cells(10, col_ref),.cells(20,col_ref)).copy Worksheets("Sheet2").Range("A1")
End with
Если вы действительно хотите выбрать диапазон, тогда лист должен быть активным:
With Worksheets("Sheet1")
.Activate
.range(.Cells(10, col_ref),.cells(20,col_ref)).Select
End with