Как игнорировать пустые ячейки в легенде диаграммы или графика

1086
Paul Traver

У меня проблемы с комбинированным графом в Excel, особенно с осью X. У меня есть два столбца, оба идут в 1000, но в настоящее время есть только 13 записей, остальные будут заполняться с течением времени.

У меня есть формула, написанная для генерации, #N/Aтак что нет никаких точек данных, кроме той, что у меня есть на данный момент, но на оси x все еще отображаются значения от 1 до 1000, поэтому график не читается.

Как заставить метки оси x останавливаться там, где останавливаются данные, а не продолжать до 1000?

Пример диаграммы:

0
Вы наносите данные в виде графика рассеяния? Если это так, вы можете просто настроить х минимум и максимум. Thales 5 лет назад 0
Это столбец и линейный график. Paul Traver 5 лет назад 0
NA - это код ошибки, сгенерированный в Excel, или это строка, созданная вами? Forward Ed 5 лет назад 1
Я поместил NA в строку, чтобы график не показывал данные. Paul Traver 5 лет назад 0

2 ответа на вопрос

1
Forward Ed

Один из способов сделать его динамичным - использовать именованную формулу / диапазон / ячейку. Вместо того, чтобы отображать A3: A1000 в качестве значений Y Series 1, вы можете назначить A3: A1000 именованному диапазону Series_1_Y. Отредактируйте свои данные для графика, а затем отредактируйте ряд и используйте вместо этого именованный диапазон.

Вы можете определить имена здесь:

PIC1

Это было бы основной концепцией именованного диапазона, но вам нужно, чтобы он был более продвинутым и динамичным. Есть несколько способов добиться этого. Основное, что вам нужно сделать, это определить количество включаемых записей. Или другими словами количество строк. Вы можете сделать это с помощью COUNT, COUNTIF, COUNTA и т.п. Затем вы можете объединить эти результаты для использования во что-то вроде OFFSET или INDEX.

С точки зрения использования OFFSET или INDEX, смещение является изменчивой функцией, что означает, что она пересчитывает каждый раз, когда НИЧЕГО изменяется в электронной таблице. INDEX, с другой стороны, будет пересчитывать только тогда, когда что-то, что влияет на него, изменится. Таким образом, в зависимости от того, как часто используется формула или от размера вычислений, INDEX не сильно перегружает вашу систему.

Поскольку у вас нет примеров данных, я буду работать со следующим макетом:

Pic2

Вы можете считать свои записи различными способами. два варианта следующие:

=COUNT(A:A) or =COUNTIF(A3:A8,"<>#N/A") 'note the above only works for string version of NA 'and adjust characters to match your spelling 

Формула, которую вы захотите использовать в формуле «Определить имя», будет иметь следующий эффект:

=$A$3:INDEX($A$3:$A$8,COUNT($A:$A)  or  =OFFSET($A$3,0,0,COUNT($A:$A),1) 

PIC3

Повторите процесс для второй серии, изменив контрольный столбец.

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

PIC4

Pic5

pic6

Обратите внимание, что если ваша книга содержит пробел в имени, заключите имя в одинарные кавычки / апострофы следующим образом:

'Dtest Two.xlsx' 

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

Да! Некоторое время я пытался заставить это работать (динамический диапазон с данными), но я думаю, что это лучший способ (если немного сложнее настроить). BruceWayne 5 лет назад 0
@BruceWayne У меня изначально было написано, чтобы использовать AGGREGATE для определения последней строки. Формула отлично работает сама по себе, отлично работает как определенное имя, но вылетает в Excel, когда определенное имя используется в диаграмме. В результате пришлось согласиться на метод подсчета Forward Ed 5 лет назад 1
-4
Thales

Возможно, самый простой способ - это скрыть столбцы (выберите столбцы # N / A -> Щелкните правой кнопкой мыши -> Скрыть), они не будут отображаться на графике.

Спасибо, что сработало, но мне нужно решение, не требующее вмешательства, книга используется широким кругом неопытных и опытных пользователей. Paul Traver 5 лет назад 0

Похожие вопросы