2010-09-21 6 views
2

У меня есть клиент, у которого есть простой, но сложный запрос на установку листа Excel, и я не могу понять, с чего начать. Я рисую пробел.График динамического диапазона Excel-диаграммы

У нас есть диапазон данных. Пример:

Quarter  Data 
2010Q1  1 
2010Q2  3 
2010Q3  4 
2010Q4  1 

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

Что я хочу иметь: Когда я добавляю следующий Q1 ниже Q4, диаграмма «автоматически» выбирает последние 4Q. Поэтому, когда я обновляю данные в:

Quarter  Data 
2010Q1  1 
2010Q2  3 
2010Q3  4 
2010Q4  1 
2011Q1  7 

На диаграмме будут показаны данные за последние 4 квартала (2010Q2 через 2011Q1). Цель состоит в том, чтобы: сохранить «старые» данные на одном листе, но обновить графики до последних кварталов.

Я имею в виду: «фиксированные» места данных, реверс данных (новые данные в верхней части), и просто вставить грести каждый новый квартал:

Quarter  Data 
2011Q2  9 
2011Q1  7 
2010Q4  1 
2010Q3  4 
2010Q2  3 
2010Q1  1 

Но это будет связано много изменений в уже существующие листы excel, и я надеялся, что может быть проще/лучше «исправить».


EDIT: @Lance Робертс ~ Бег с предложением:
- немного подробнее ... Данные настройки таким образом, чтобы информация столбец в А, но данные для нескольких таблиц в B +. Таблица 1 - B/C. Таблица 2 - D/E. И т.д.
- Данные также находятся на другом листе, чем таблицы.

Идя: This Offset Description, что я пытался делать приспосабливается похож на такой:

NAME  FORMULA OFFSET(range, rows, columns, height, width) 
DATA0  =OFFSET('DATASHEET'!$A$2, COUNTA('DATASHEET'!$A:$A - 8, 0, 8, 1) 
DATA1  =OFFSET('DATASHEET'!$A$2, COUNTA('DATASHEET'!$A:$A - 8, 1, 8, 1) 
DATA2  =OFFSET('DATASHEET'!$A$2, COUNTA('DATASHEET'!$A:$A - 8, 2, 8, 1) 

Цель в том, чтобы связать длину/место для B/C/и т.д. данные А. Таким образом, если добавить столбец на A, материал, привязанный к Data1/2, соответствующим образом корректирует (или 3/4/5/и т. д., которые являются разными графиками на разных листах )

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

1 вопрос, который я до сих пор не решены: данные не выравнивая правильно: Example

«Данные» всегда, последняя колонка под 2-го по последний квартал. Последняя четверть всегда пуста. Данные смещаются вправо (в этом примере под 3Q10 - НЕ под правильным столбцом. 11 должно быть ниже 4Q10. 9.5 должно быть ниже 2Q10).

Я знаю, что я получаю что-то простое неправильно ...


alt text

Кажется, работает. Первое, что мне пришлось изменить, было CountA - 9 (а не CountA - 8). Далее был «смещение столбца» (0, 1, 2, 3, ...). Также разделите некоторые вещи, чтобы сделать их более разделенными (мне нужно обучить кого-то другого, как это сделать для ее потребностей в отчетности).

Благодаря Лэнс :)

+0

0 это смещение, что сохраняет ту же ссылку на ячейку, так что на ваши 3 формул необходимо изменить параметр столбцов на 1,2,3 соответственно (также вы сбросили скобки от заявления СЧЁТЗА. –

+0

Да ... Я собираюсь обновить свой ответ, потому что я снова переделал материал и получил его работу. – WernerCD

ответ

3

Если карта находится на том же листе, что и данные:

Имя первой ячейки данных (A2) в качестве именованного диапазона, скажем TESTRANGE. Создан именованный диапазон MYDATA в виде следующей формулы:

=OFFSET(TESTRANGE, COUNTA($A:$A) - 5, 0, 4, 2) 

Теперь перейдите на вкладку SERIES диалога данных диаграммы SOURCE, и изменить VALUES заявление:

=Sheet1!MYDATA 

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

+0

Я проверю это завтра :) – WernerCD

+0

Отредактированный вопрос с дальнейшим описанием и более подробная информация. Еще раз спасибо за функцию OFFSET, она определенно выглядит как шаг в правильном направлении. – WernerCD

+0

Наконец-то приземлился в ответ (основы выложены выше).Спасибо тоннам :) – WernerCD

0

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

Измените диапазон Quarter-Data на таблицу Excel. Выберите диапазон и нажмите Ctrl + T. В таблице «Вставка» убедитесь, что выбран правильный диапазон данных и отмечен «Моя таблица с заголовками» и нажмите «ОК». Это превращает простой диапазон в специальную структуру данных с магическими свойствами.

Затем создайте новый диапазон, который связывается с последними четырьмя строками этой таблицы и создаст диаграмму на основе этого нового диапазона. Это показано ниже. Таблица представляет собой специально отформатированный диапазон в A1: B9 (вы можете выбрать менее стиль в своем лице), а диапазон печати - D1: E5.

Range converted to Table, with plotting range and chart.

Формулы в ячейках D2 через D5 ниже. Скопируйте D2: D5 и вставьте в E2: E5, чтобы завершить формулы в нашем диапазоне печати.

D2: = ИНДЕКС (Таблица1 [Квартал], ЧСТРОКИ (Таблица1 [Квартал]) - 3) D3: = ИНДЕКС (Таблица1 [Квартал], ЧСТРОКИ (Таблица1 [Квартал]) - 2) D4: = ИНДЕКС (Таблица1 [Квартал], ЧСТРОК (Таблица1 [Квартал]) - 1) D5: = ИНДЕКС (Таблица1 [Квартал], ЧСТРОК (Таблица1 [Квартал]))

Таблица1 это имя, назначенное в таблице, и четверть это имя первого столбца таблицы (а также заголовок столбца). Вам не нужно вводить все это, просто выберите столбец в таблице. Поскольку таблица расширяется или сжимается, Table1 [Quarter] отслеживает изменения.

Теперь добавьте новую точку данных. Таблица расширяется, и наша небольшая промежуточная область в D1: E5 связана с новыми последними четырьмя строками таблицы.

Table, plotting range, and chart, showing new last-four data points.

И как мы добавим лет стоит данных, формулы и диаграммы угнаться.

Table, plotting range, and chart, again showing new last-four data points.