5

У меня есть диаграмма в Excel 2007, которая в основном представляет собой линейный график.

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

Если я нажимаю «Удалить» в этой ячейке, появляется пробел, но когда я добавляю формулу, появляется линия, соединяющая точки с обеих сторон.

Есть ли способ, которым я могу вернуть что-то с функцией IF, которая производит разрыв?

IF(somecondition; SUM(...); "")
                            ^^-  what to add here, is it possible?

Следующее не работает:

IF (somecondition; SUM(...); "")
IF (somecondition; SUM(...);)
IF (somecondition; SUM(...))
IF (somecondition; SUM(...); NA)
IF (somecondition; SUM(...); 1/0)

Они все по-прежнему нарисованы так, как если бы ячейка содержала 0 (ноль).

4 ответа4

4

Я бы сказал, что возвращение NA(). Тем не менее, в линейном графике, даже если вы установили предпочтения серии, чтобы оставить пробелы ("Выбрать данные" -> "Скрытые и пустые ячейки" -> «Показать пустые ячейки как:» -> "Пробелы"), линия будет просто непрерывно подключаться к следующей доступной точке в серии. Если вы не возражаете перейти на другой тип диаграммы, например, диаграмма области оставит пробелы.

2

Если вы используете точечную диаграмму, любые точки, которые вы определили как = NA(), будут опущены, и соединительная линия не будет проведена. - DaveParillo 9 января 2010 года в 6:14

Только частично правильно. NA() или # N/A на линейной или XY диаграмме будут подавлять рисование маркера. Если есть маркеры на каждой стороне одной или нескольких точек, подавленных NA(), линия соединит существующие маркеры через промежуток. Если одна или несколько подавленных точек находятся в конце диапазона данных, никакая линия не будет соединяться, потому что на одной стороне есть только точка, а на другой стороне нет точки для соединения.

РЕДАКТИРОВАТЬ: недавнее (в конце 2017 года) улучшение Excel 2016 рассматривает # N/A как пустую ячейку. (Если у вас Office 365, вы можете переключить этот параметр.) Наконец, теперь мы можем получить формулу, которая выдает результат, который отображается как разрыв.

1

Вот тот же вопрос / ответ от SO. Кажется, что вы могли бы использовать макрос Worksheet_Change для этого, но единственный вариант - удалить содержимое ячейки, если значение пустое или равно нулю, что, в свою очередь, удаляет вашу формулу, к сожалению, удаляет.

https://stackoverflow.com/questions/1119614/return-empty-cell-from-formula-in-excel

0

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

IF (некоторое условие; SUM (...); (следующая ячейка + предыдущая ячейка)/2)

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

Этот метод имеет два недостатка:

  1. Если вы выполняете какой-либо статистический анализ, такой как среднее значение или MSD, эта средняя ячейка будет влиять на результат, хотя и не должна.
  2. Я не уверен, но это, вероятно, даст ошибочные результаты, если два соседа должны быть пустыми (так как один попытается вычислить его значение на основе другого).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .