Диаграмма — это только подраздел данных в моей таблице

#excel #vba

Вопрос:

У меня есть таблица, и я хочу показать только часть этих данных в виде диаграммы.

Это мои данные

 pets       age
coco       3
rover      3
clifford   8
rugrat     7
doug       1
 

Я хочу сделать диаграмму, которая показывает домашних животных по оси x и возраст по оси y.

Важно отметить, что я хочу показать данные о домашних животных, которым не менее четырех лет (Клиффорд и руграт).

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

Комментарии:

1. Можете ли вы просто использовать другую таблицу (с домашними животными и поиском), чтобы вытащить то, что вы хотите построить?

2. Я бы предпочел не загромождать свой рабочий лист, потому что у меня есть эта проблема с многочисленными таблицами. У меня есть большой стол, где меня устраивают дополнительные категории, а затем стол поменьше, который отталкивается от большого. Возможно, другой вариант-убедиться, что в таблице меньшего размера есть только значения, соответствующие критериям

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

4. Если я правильно понял приведенные выше 2 комментария, то я думаю, что мы говорим об одном и том же. 🙂 Но, возможно, вы могли бы расширить свою операцию, чтобы уточнить более полные условия / сценарий?

5. Когда вы фильтруете свои базовые данные, скрытые строки не должны отображаться на диаграмме — знаете ли вы эту опцию: Лента > Выберите данные ->> Скрытые и пустые ячейки (кнопка внизу слева) ->>> снимите флажок Показывать данные в скрытых строках и столбцах.

Ответ №1:

Вы упомянули, что предпочитаете избегать сводных таблиц. В этом решении используются сводные диаграммы, А НЕ сводные таблицы.

  1. Щелкните в любом месте таблицы и перейдите в раздел Вставка->сводная диаграмма
  2. (Необязательно) В меню Создать сводную диаграмму установите флажок, чтобы добавить эти данные в модель данных. Это предотвратит создание Сводной таблицы в рабочей книге. введите описание изображения здесь
  3. Перетащите Возраст в раздел значения, а домашних животных-в раздел Оси (Категории). введите описание изображения здесь
  4. Нажмите кнопку раскрывающегося списка в поле Домашние животные и добавьте фильтр значений. В этом случае вы хотите, чтобы сумма возрастов была больше 4. (В качестве альтернативы вы можете использовать кнопку Домашние животные на сводной диаграмме.)

введите описание изображения здесь
введите описание изображения здесь

Ниже приведен конечный продукт. Вы можете настроить ось y, добавить заголовки и т. Д. Отсюда. введите описание изображения здесь

Ответ №2:

Если у вас есть Office 365, попробуйте это:

Предположим, что следующее:

  • «домашние животные» находится в колонке А
  • «возраст» указан в колонке В
  • Вы работаете в «Листе5»
  • Имя файла-Book2

В диспетчере имен создайте именованный диапазон под названием «Названия» со значением как:

=FILTER(INDIRECT(«Sheet5!$A$2:»amp;»$A$»amp;COUNTA(Sheet5!$A:$A)),INDIRECT(«Sheet5!$B$2:»amp;»$B$»amp;COUNTA(Sheet5!$B:$B))>4)

В диспетчере имен создайте другой именованный диапазон под названием «Значения» со значением как:

=FILTER(INDIRECT(«Sheet5!$B$2:»amp;»$B$»amp;COUNTA(Sheet5!$B:$B)),INDIRECT(«Sheet5!$B$2:»amp;»$B$»amp;COUNTA(Sheet5!$B:$B))>4)

Для диаграммы выполните следующие действия:

  1. Вставьте тип диаграммы, который вам не нужен, на основе данных в столбце A amp; B, а затем
  2. Нажмите на диаграмму
  3. На вкладке «Дизайн диаграммы»нажмите» Выбрать данные».
  4. В разделе «Записи легенды (серии)» нажмите «Добавить»
  5. В Поле «Значение Серии» введите Book2!Значения (Значения-это именованный диапазон, созданный ранее)
  6. В разделе «Метки горизонтальной оси (категории)» нажмите «Изменить».
  7. В Поле «Диапазон меток оси» введите Book2!Названия (Названия-это именованный диапазон, созданный ранее)

Комментарии:

1. Если данные уже находятся в таблице Excel, вы, вероятно, могли бы упростить формулы с помощью чего-то вроде =FILTER(Table1[Age],Table1[Age]>4) . и. =FILTER(Table1[Pets],Table1[Age]>4) В любом случае, хорошее решение.