Установка фильтра сводной таблицы через vba по наименованию , а не по номеру элемента в списке

Анонимные
2019-06-01T06:13:38+00:00

Ексель 2016. Сводная таблица подключена к олап Кубу. В сводной таблице есть поля. В т.ч. "контрагент", "товар" Оба поля содержат текст и находятся в области фильтра. Ставлю на запись макрос. Выбираю в фильтрах контрагент5 и товар25. Останавливаю запись. Смотрю макрос. Там: Фильтр по [контрагент5] (все в порядке) и , ВМЕСТО [товар25] написано [7] (просто число семь) - порядковый номер товара в списке в фильтре(именно порядковый номер, а не код элемента в олап кубе...).

Как выбрать товар по наименованию, а не по номеру в списке? Почему в некоторых полях наименования, а в некоторых- номера???

Microsoft 365 и Office | Excel | Для дома | Windows
Microsoft 365 и Office | Excel | Для дома | Windows

Семейство программного обеспечения Майкрософт для работы с электронными таблицами, оснащенное инструментами для анализа, построения диаграмм и обмена данными.

Заблокированный вопрос. Этот вопрос был перенесен из сообщества службы поддержки Майкрософт. Вы можете проголосовать о его полезности, но не можете добавлять комментарии или ответы, а также подписаться на этот вопрос.

Комментариев: 0 Без комментариев

Ответы: 61

Сортировать по: Самые старые
  1. Анонимные
    2019-06-05T09:10:29+00:00

    Вы не внимательны!!!

    В коде VBA, у меня нет строки оканчивающуюся на: "[Node].[Chicago Node ID].&[314]")

    Применяемый вами OLAP-куб не даёт необходимую вам информацию, а именно:

    Наименование Товара с необходимой вам детализацией.

    Для примера:

    Товар - Азу

    Детализация: Говядина, Баранина, Свинина

    Детализация: Картофель, Рис

    Единственно правильное для вас решение, - обратиться за помощью к разработчику OLAP-куба.

    Вы также можете подождать ответа от других участников Форума TechNet.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  2. Анонимные
    2019-06-05T12:07:02+00:00

    Конечно у вас нет этого поля. Оно же из моего примера... Не понял, на что намекаете..

    Олап: Ну вы же умный человек. Что бы вы, будучи разработчиком олапа ответели тому, кто приходит и говорит, что у него в екселе что-то не работает.

    Вот и они так отвечают...

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  3. Анонимные
    2019-06-05T14:16:22+00:00

    Вы необоснованно упорно, не желаете предоставить информацию по использованному вами OLAP-кубу, а именно:

    -где скриншот с вашим фильтром по полю "Продукт";

    -детализацию поля "Продукт";

    -вы так и не ответили, какую задачу вы пытаетесь решить с использованием макроса к фильтру OLAP-куба.

    Так как необходим непосредственный доступ к вашему рабочему месту, вам необходимо пригласить IT-Специалиста, который на вашем рабочем месте разберётся с задачей которую вы пытаетесь решить, и окажет вам необходимую помощь в решении вашей задачи.

    К сожалению, другого пути решения вашего вопроса не видно.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  4. Анонимные
    2019-06-05T18:47:37+00:00

    "Продукт" было для упрощения. Т.к. как называется поле - не важно.

    Скрины с полями "регион" и "дистрибьютор" (сскоторыми проблема) я выслал.

    Если чего-то не хватает, то напишите.

    У нас у всех у кого можно спросить я уже спосил. Чудо с ит спецом, который подходит и решает проблему не случилось. Задача , простая, тимповая: На листе есть три ячейки: дата, наименование товара, наименование дистрибьютера. Надо что бы при нажатии кнопки (вызывающей макрос) сводной таблице  сработали фильтры по значениям ячеек. С датой и названием товара проблем нет. С наименованием дистрибьютера - проблема: поиск по наименованию не срабатывает.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  5. Анонимные
    2019-06-05T20:23:08+00:00

    Я правильно понимаю вашу задачу?:

    Вы хотите с помощью макроса, искать поставщика по наименованию товара?

    Для примера, имеем таблицу вида:

    вам необходимо найти поставщика Бренда №2520006093935, запускаем макрос поиска:

    Sub поставщик()

    '

    ' поставщик Макрос

    ' поиск поставщика по бренду

    '

    '

    ActiveSheet.PivotTables("BIWEB_SI_OLAP").PivotFields( _

    "[DimProduct].[Brends].[Product Z Brend]").VisibleItemsList = Array( _

    "[DimProduct].[Brends].[Product Z Brend].&[2520006093935]")

    ActiveSheet.PivotTables("BIWEB_SI_OLAP").PivotFields( _

    "[DimProduct].[Brends].[Product Brend]").VisibleItemsList = Array("")

    ActiveSheet.PivotTables("BIWEB_SI_OLAP").PivotFields( _

    "[DimProduct].[Brends].[Product Min]").VisibleItemsList = Array("")

    End Sub

    выполнение которого в таблице выдаёт результат:

    Файл-пример.

    P.S. Поиск поставщика по Бренду, должен также выполняться без применения макроса.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев