Адрес диапазона для отдельной ячейки (A1) иногда возвращает адрес диапазона ячеек «A1: A1» вместо «A1» - PullRequest
0 голосов
/ 26 сентября 2018

Когда я пытаюсь получить адрес диапазона для этого выражения:

varAddr = RecColRef.TargetSheet.Cells(Val(strRow), 5).Address

В большинстве случаев varAddr будет содержать "$E$7", но иногда оно будет иметь "$E$7:$E$7".Как заставить его всегда возвращать адрес одной ячейки "$E$7"?

edit: удалено лишнее "(" из кода, который мешал компиляции

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

или

varAddr = RecColRef.TargetSheet.Cells(Val(strRow), 5).cells(1,1).Address

0 голосов
/ 26 сентября 2018

Попробуйте обернуть его в функцию SPLIT

varAddr = split(RecColRef.TargetSheet.Cells(Val(strRow), 5).Address, ":")(0)

Если возникает диапазон с «:», это разделит его на две части, например Split("E1:E1", ":"), и вернет только первую часть (0) -если это «нормальный» диапазон, например, E1, он все равно вернет то же самое.

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