Выделение ячейки и диапазона ячеек одновременно

Автор tigrusha, 17 сентября 2015, 12:35

tigrusha

Добрый день.
Задача следующая.
После прыжка с 1-ой ячейки строки на 4 вправо, оставить выделенной 1-ую ячейку строки. Потом выделить диапазон с 4-ой ячейки вправо, оставив при этом 1-ую строку выделенной.

Например, нужно выделить А1,Е1:до ячейки, где есть данные.

Спасибо.

Администратор

tigrusha, очень редко требуется выделять ячейки, чтобы с ними что-то сделать. Предполагаю, что для вашей задачи не нужно выделять ячейки. Но на всякий случай сделал код, который выделяет ячейки.

Код
Sub Main()

    Dim shAct As Excel.Worksheet, rng As Excel.Range
    Dim lngLCol As Long
   
   
    '1. Vba-именование активного листа. Лучше явно обращаться к листам.
    Set shAct = ActiveSheet
   
    '2. Поиск последнего столбца в строке 1.
        ' Команда "End" не ищет в скрытых ячейках. Поэтому может быть потребуется использовать
        ' команду "Find" с параметром "LookIn:=xlFormulas".
    lngLCol = shAct.Rows(1).Find(What:="*", LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns, _
        SearchDirection:=xlPrevious, MatchCase:=False, SearchFormat:=False).Column
       
    '3. Vba-именование нужных фрагментов. Нужным фрагментам присваивается одно имя "rng".
    Set rng = Application.Union(shAct.Range("A1"), shAct.Range("E1").Resize(1, lngLCol - 4))
   
    '4. Выделение нужного фрагмента.
    rng.Select

End Sub
[свернуть]