2009-10-12 6 views
0

У меня есть лист (давайте идти с винами в качестве примера), который перечисляет каждую бутылку вина в моем подвале, когда я купил его, сколько я заплатил и т.д.Могу ли я получить реляционные данные в таблицу Excel Pivot

Существует столбец, который описывает вино в тегах, разделенных запятыми, таких как «Fruity, White».

Я создал сводную таблицу из этих данных с описанием в качестве столбца фильтра. Однако я не могу отфильтровать его «Белый». Я должен найти каждое описание, содержащее «белый», например «сухой, белый», «белый, хрустящий» и т. Д.

Находясь на фоне РСУБД, мой естественный наклон заключается в том, чтобы положить теги в свою таблицу, строка вина, поэтому в строке вина есть нулевые или более теги.

Как, как я могу использовать это для фильтрации строк вина?

+0

В этом случае Excel - далеко не тот инструмент для работы. –

+0

К сожалению, настоящий отчет не о вине. Это для The Boss, и он может понять Pivot Tables. Я могу потратить время на создание другого интерактивного инструмента для представления тех же данных, а затем привести его в Excel по запросу для других отчетов, графиков и т. Д. Или я могу спросить о SO в надежде, что это можно сделать в Excel и продолжить работу , – RickMeasham

ответ

1

Да, вы можете сделать это в Excel, и поля описания могут оставаться как «Сухие, белые» и т. Д., Так как вам не нужно разделять значения, разделенные запятыми.

Допустим, что источник таблицы содержит текстовый столбец для описания, столбца чисел для значения и столбца чисел для Year Bought.

сводном настроен с помощью следующих полей

  • : Описание, стоимость и год Купленный.

  • Колонка метки: Год Купленный

  • Row Labels: Описание
  • Сумма значений: Сумма стоимости

Существует выпадающий фильтр этикетки на меток строк - нажмите на это и должна быть опция выбора фильтров меток. Выберите это, а затем выберите Содержит. Вы можете ввести «Белый», который выберет все ваши описания, которые содержат белый цвет, например. «Сухой, белый», «Белый, хрустящий». Фильтр включает? для представления одного символа и * для представления любой серии символов.

Аналогичные фильтры этикеток для «начинается с» и «заканчиваются», а также отрицание.

Я пробовал это в Excel 2007, и он также должен работать в 2003 году. Я думаю, что в Excel 2003 вы могли бы даже комбинировать фильтры, например. содержит «Белый» и не содержит «Сухой», но в 2007 году я не мог найти способ сделать это.

0

Простите меня, если я выскажу очевидное, но причина, по которой у вас возникают проблемы, состоит в том, что столбец описания не находится в 1NF, а интерфейс pivot Excel не является достаточно гибким, чтобы разрешить поиск на основе шаблонов.

Простейшим вариантом будет нормализация CSV в ряд столбцов, каждый из которых представляет собой один атрибут - один столбец для цвета вина, один для сладости, один для страны происхождения и т. Д. - и применяют фильтр через несколько столбцов. Однако, если (по мере того, как высказывается ваш комментарий по вопросу), вино является метафорой для вашей реальной проблемы, у вас может не быть роскоши пересмотреть дизайн исходных данных.

Другой возможностью может быть использование макроса (или запроса на базу данных - я уже не знаю из вашего вопроса, была ли вы уже реализована система тегов), чтобы предварительно фильтровать входные данные в исходной таблице сводной таблицы на основе значения тегов, которые вы хотите найти, а затем повторно обновить сводную таблицу на основе этих данных.

Третья возможность - это VBA, используемая в this question, которая выглядит так, как будто пользователь будет фильтровать видимые строки сводной таблицы.

0

= ЕСЛИ (ISERR (FIND ("белый", ВЕРХНИЙ (В5))), 0,1)

создать дополнительный столбец и добавить формулу. Для этого есть 2 трюка. Один из них - поиск WHITE в колонке описания, используя верхний - чтобы избить тот факт, что поиск excel чувствителен к регистру. Во-вторых, он возвращает ошибку значения, если строка не существует, поэтому iserr позволит вам отловить это и вернуть в этом примере 0, если это не так, или 1, если это так. Вы можете заменить белый и пустой на 1 и 0.

0

вы можете написать сценарий, который проходит через данные и добавляет новые строки для каждого элемента, разделенного запятой, в столбце описания. Это позволит лучше фильтровать сводную таблицу.

Смежные вопросы