2013-09-14 4 views
0

Когда я пытаюсь определить диапазон в качестве одной ячейки относительно текущей ячейки, я получаю ошибку, что диапазон не удалось:Установить диапазон в качестве одной ячейки относительно активной ячейки

If target.Cells.Column = 2 Then 
    If target.Cells.Row > 3 Then 
     If target.Cells.Count = 1 Then 
     Range(ActiveCell.Offset(0, 1)).Select 
     End If 
    End If 
End If 

Я знаю, что я мог бы создайте диапазон в текущей ячейке, а затем смещайте его, но я просто хочу определить диапазон

+1

Вы не определяете диапазон в своем коде, выбрав его. Что такое цель? Это внутри события WorkSheet_Change или WorkSheet_SelectionChange? –

+0

Можете ли вы объяснить результат, который вы хотите от этого, пожалуйста. На данный момент вы выбираете ячейку, но затем ничего не делаете с ней. Ваша цель вернуть переменную диапазона, вернуть строковую переменную, представляющую адрес, или сделать что-то еще? – ChrisProsser

+0

Аргумент «Range» должен быть введен как текст или вторая ссылка, предоставленная для компиляции кода. В этом случае он все равно лишний, поскольку вы можете просто использовать: 'ActiveCell.Offset (0, 1). Выбрать' –

ответ

0
Dim c As Range 

If target.Cells.Count = 1 Then 
    If target.Row > 3 and target.Column = 2 Then 
     Set c = target.Offset(0, 1) 
     'do something with c 
    End If 
End If 
Смежные вопросы