powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Предусловие - значение в сводной таблице.
6 сообщений из 6, страница 1 из 1
Предусловие - значение в сводной таблице.
    #36156144
nextTyro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем - доброго времени суток!
Подскажите, пожалуйста, как достучаться до сводной таблицы:
не видит, с чем сравнивается, чему равно, соответственно - не выполняются задания внутри блока:

If ActiveSheet.PivotTables("Сводная таблица1").PivotFields("[Дата]") = _
("[Дата].[Все даты].[2009 год].[Квартал 1].[Январь]") Then

.......

End If

Пролетает со свистом, даже если в сводной таблице выбрано именно это значение даты. С VBA хорошо не знакома, но есть очень большая необходимость в этом отчете. Помогите, пожалуйста. Может быть, что-нибудь уточнить?
...
Рейтинг: 0 / 0
Предусловие - значение в сводной таблице.
    #36156378
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поставьте точку останова на этой строке и посмотрите отладчиком, чему равно в этот момент выражение:
ActiveSheet.PivotTables("Сводная таблица1").PivotFields("[Дата]")


честно говоря, не очень понятно, вы уверены, что вы хотите сравнить именно с ТЕКСТОВОЙ СТРОКОЙ вида "[Дата].[Все даты].[2009 год].[Квартал 1].[Январь]" ?
...
Рейтинг: 0 / 0
Предусловие - значение в сводной таблице.
    #36156553
nextTyro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как проверить значение по-другому? Есть ли какая-то возможность уровнять эти две части равенства в условии? Я думала, что в правой я указываю значение этого параметра ....
...
Рейтинг: 0 / 0
Предусловие - значение в сводной таблице.
    #36156595
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как в левой, так и в правой части вы можете указать ЛЮБОЕ выражение. С правой частью - понятно, это строка вида "[Дата].[Все даты].[2009 год].[Квартал 1].[Январь]" (скобки там, кстати, лишние). А вот чему равна левая часть в нужный вам момент - неясно. Ясно только то, что она не равна указанной вами строке.
Чтобы узнать, чему же она равна, я предлагаю поставить там точку останова, и при остановке в окне немедленного выполнения написать
?ActiveSheet.PivotTables("Сводная таблица1").PivotFields("[Дата]")
...
Рейтинг: 0 / 0
Предусловие - значение в сводной таблице.
    #36156666
nextTyro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Понимаете, на форме - в Excel - она как раз и равна в текстовом эквиваленте - правой части. Это выпадающая менюшка, где я галочками отметила как раз январь-месяц первого квартала 2009 года. Или я даже тут же перед тем, как проверять это равенство, присваиваю значение элементу:

ActiveSheet.PivotTables("Сводная таблица1").PivotFields("[Дата]"). _
AddPageItem "[Дата].[Год].&[2009].&[1].&[1].&[1]", True


В текстовом эквиваленте это и есть: "[Дата].[Все даты].[2009 год].[Квартал 1].[Январь]"
Потом условие - и все вылетает без зацепки ....

И отладчик мне не показывает значения ... Может, в левой части надо было дописать, типа
.Caption или .Text? (чтобы и справа и слева в этом выражении были сравнимые составляющие) Есть ли в VBA такая возможность?
...
Рейтинг: 0 / 0
Предусловие - значение в сводной таблице.
    #36156716
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nextTyro
И отладчик мне не показывает значения ... Может, в левой части надо было дописать, типа
.Caption или .Text?


ВООООТ. Если отладчик не показывает текстовое значение, значит и IF не может его сравнить.

Чем мог - помог. :) Я просто не знаком с объектом PivotFields и не могу дать конкретного совета. Кроме двух
1) нажмите точку и посмотрите, какие есть у него свойства
2) добейтесь, чтобы в отладчике выдавалось то, что нужно, тогда и сравнение будет работать.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Предусловие - значение в сводной таблице.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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