VBA - смещение ясности - PullRequest
       19

VBA - смещение ясности

0 голосов
/ 25 мая 2018

Проблемы с пониманием смещения.

Какая разница в определении между:

wsSheet1.Cells(Rows.Count, 1).End(xlUp).Row

и

wsSheet1.Cells(Rows.Count, 2).End(xlUp).Offset(1, 0).Row

Пропускал это через окно иполучал странную ошибку.Но я получаю первый, который дает мне количество строк в столбце, но смещение идет вниз на одну ячейку одна за другой?

1 Ответ

0 голосов
/ 26 мая 2018

смещается ли смещение вниз на одну ячейку одна за другой?

Идет столько строк и / или столбцов, которые вы предоставляете в качестве параметров;используя полный синтаксис:

[A1].Offset(RowOffset:=1, ColumnOffset:=1).Activate    'Activates B2
[A1].Offset(RowOffset:=2, ColumnOffset:=1).Activate    'Activates B3
[A1].Offset(RowOffset:=2, ColumnOffset:=2).Activate    'Activates C3

[A1].Offset(RowOffset:=0, ColumnOffset:=0).Activate    'Activates A1
[A1].Offset(RowOffset:=-1, ColumnOffset:=0).Activate   'Error 1004 (Row 0 doesn't exist)

Вы также должны полностью квалифицировать все диапазоны с wsSheet1:

wsSheet1.Cells(wsSheet1.Rows.Count, 1).End(xlUp).Row
wsSheet1.Cells(wsSheet1.Rows.Count, 2).End(xlUp).Offset(1, 0).Row

или

With wsSheet1
    .Cells(.Rows.Count, 1).End(xlUp).Row
    .Cells(.Rows.Count, 2).End(xlUp).Offset(1, 0).Row
End With

Offset

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...