Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Предусловие - значение в сводной таблице. / 6 сообщений из 6, страница 1 из 1
21.08.2009, 10:37
    #36156144
nextTyro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Предусловие - значение в сводной таблице.
Всем - доброго времени суток!
Подскажите, пожалуйста, как достучаться до сводной таблицы:
не видит, с чем сравнивается, чему равно, соответственно - не выполняются задания внутри блока:

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

.......

End If

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


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

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


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

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


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

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


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