Какой правильный синтаксис для листов ("sheet_1"). ActiveCell.Offset (0, i + 1) .Range ("A1"). Значение - PullRequest
1 голос
/ 22 апреля 2020

Каков правильный синтаксис для указания VBA

"рассмотреть значение в sheet_1 в ячейке, которая имеет смещение (0, i) от активной ячейки"?

Я пробовал с

Sheets("sheet_1").ActiveCell.Offset(0, i).Range("A1").Value

но это дает мне

ошибка времени выполнения 438

Обратите внимание, что моя цель заключается в следующем:

If Sheets("sheet_1").ActiveCell.Offset(0, i).Range("A1").Value = Sheets("sheet_23").ActiveCell.Offset(0, i).Range("A1").Value Then

'do something

1 Ответ

1 голос
/ 23 апреля 2020

ActiveCell - это только одна активная ячейка в том листе, который активен во время выполнения кода. Он не может ссылаться на ячейку на неактивном листе. Сначала необходимо активировать другой лист.

Конечно, вы можете использовать свойство Address активной ячейки и ссылаться на соответствующую ячейку на неактивном листе.

Как правило, это рекомендуется не использовать activecell или выделение .

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