Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / функция на листе Excel с использованием CurrentRegion / 7 сообщений из 7, страница 1 из 1
24.10.2011, 12:30
    #37495020
Snowblast
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
На листе Excel есть заполненная данными таблица. Данные организованы построчно. Количество строк меняется.
На VBA пишется функция, обрабатывающая эту динамически меняющуюся таблицу.
Для определения фактического диапазона, занятого таблицей, используется CurrentRegion.
Проблема в том, что при вызове данной функции с листа Excel CurrentRegion возвращает неверный результат, а именно:

строка ThisWorkbook.Worksheets("Лист1").Range("B10").CurrentRegion.Address должна возвращать адрес диапазона, содержащего таблицу (где ячейка B10 - одна из ячеек заголовка таблицы), однако фактически данная строка возвращает адрес только исходной ячейки B10. При этом при запуске той же функции в окне Immediate строка возвращает корректный адрес таблицы.

В чем может быть ошибка?
...
Рейтинг: 0 / 0
24.10.2011, 14:48
    #37495319
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
А если так:

Код: plaintext
1.
set mytable = ThisWorkbook.Worksheets("Лист1").Range("B10").CurrentRegion
msgbox mytable.Address 
...
Рейтинг: 0 / 0
24.10.2011, 15:13
    #37495384
Snowblast
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
AkinaА если так:

Код: plaintext
1.
set mytable = ThisWorkbook.Worksheets("Лист1").Range("B10").CurrentRegion
msgbox mytable.Address 


К сожалению, такая запись ничего не меняет. Результат все тот же - при запуске функции с листа Excel возвращается адрес только исходной ячейки, а не всей таблицы. Регулярно использую CurrentRegion в процедурах и функциях внутри VBA - все работает как часы, ошибка именно при попытке использовать функцию на листе.
...
Рейтинг: 0 / 0
24.10.2011, 15:21
    #37495402
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
Неплохо бы тогда тестовый файл выложить
...
Рейтинг: 0 / 0
24.10.2011, 15:38
    #37495442
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
Я не понял - мы работаем в VBA или всё-таки в VB с подключением соотв. объектной библиотеки?
...
Рейтинг: 0 / 0
24.10.2011, 15:50
    #37495472
Snowblast
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
Shocker.ProНеплохо бы тогда тестовый файл выложить

Тестовый файл.
...
Рейтинг: 0 / 0
25.10.2011, 19:25
    #37497626
Snowblast
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
функция на листе Excel с использованием CurrentRegion
Возможно, проблема в ограничениях пользовательских функций, вызываемых с листа, описанных
здесь.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / функция на листе Excel с использованием CurrentRegion / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]