2015-05-12 2 views
0

У меня есть диапазон столбцов данных A, B и C. Я отобразил в виде линейного графика с B в качестве первичной оси и C как вторичную ось. Столбец A - это ось категории. Я хочу найти максимальное значение столбца C и поместить выноску данных в точку, которая является максимальным значением столбца C и где находится столбец B.VBA, чтобы найти максимальное значение в диаграмме

Я знаю, это звучит запутанно. В этом примере максимум Столбец C встречается в точке 27 (или 1,50% от оси категории). Я бы хотел, чтобы точка в точке 27 как для столбца B, так и для C.

Столбец A - процент от -5.00 до 10.00, приращенный на .25%. Столбцы B и C нанесены на график изменения.

ответ

1

В прошлом я сделал что-то подобное, использую формулу в столбце D, чтобы идентифицировать наибольшее число в столбцах C и B и сделать его высокоценным на вашей диаграмме, если результат верен.

Добавить колонку D в виде серии к диаграмме.

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

Вы можете наклеить ярлык или просто поместить сумму, отображаемую над графиком.

Для этого вам не нужен VBA.

+0

Спасибо Дэн, я видел, что решение , и я думаю, что это может быть то, что я буду делать. Я надеялся на что-то в VBA, но я знаю, что формула Max будет делать трюк. Моя проблема была в том, что эта диаграмма является частью панели инструментов, и я хочу, чтобы она выглядела как можно чище. Конечно, есть способы скрыть что-то постороннее. –

1

Возможно, вам будет интересно узнать, что я нашел решение, которое работает для меня. Во-первых, я добавил столбцы D и E, используя формулу = IF (C2 = MAX (C $ 2: C $ 62), C2, NA()) и = IF (C2 = MAX (C $ 2: C $ 62), B2, NA ()), это дало мне точку на графике для обеих линий B и C, где B было максимальным. Затем я отформатировал график так, чтобы эти точки имели выноски данных (запрос от клиента). Наконец, я устанавливаю столбцы D и E для белого шрифта, чтобы соответствовать фону, чтобы они выглядели невидимыми. Я не люблю этот шаг, но я не хочу, чтобы клиент, чтобы увидеть дополнительные строки и т.д. # НД

Основной VBA для выноски данных является ActiveChart.FullSeriesCollection (5) .Select ActiveChart.SetElement (msoElementDataLabelCallout)

Если серия 5 (колонка E), и я ставлю выноски данных на точке, графически с который бывает максимум колонки 3.

+0

Спасибо за отчетность @Matthew Ingle, всегда полезно получить окончательное решение здесь для тех, кто ищет похожие проблемы по треку. Рад, что вы все это разработали :). –