Группировка значений даты в диаграмме веб-компонентов Office
Как я могу форматировать и группировать даты по осям категорий?
Я пытаюсь сделать это с помощью этого кода:
With ChartSpace.Charts(0).Axes(chAxisPositionCategory)
.NumberFormat = "mmm yyyy"
.GroupingType = chAxisGroupingManual
End With
но все, что я получаю, это "неверный параметр".
Если я напишу это:
debug.print ChartSpace.Charts(0).Axes(chAxisPositionCategory).NumberFormat
Я получаю "генерал"
и тогда, если я напишу:
ChartSpace.Charts(0).Axes(chAxisPositionCategory).NumberFormat = "General"
это "неверный параметр"!!!
Это код VBA в MS Access с использованием OWC11. Я связал данные с таблицей SQL с 3 столбцами:
Field1 varchar(200),
Date1 datetime, --can't use Date type or the chart won't recognise as date!!
Value1 int
Я искал помощи, и у других есть эта проблема, но никто не получил ответа - кроме альтернатив, которые не решают проблему. У меня есть пример MS, который работает в HTML, но использует жестко закодированные данные. Мне нужно использовать все функции группировки по оси X, основанные на времени, но я не могу обойти простой числовой формат.
Добавить комментарий: обнаружил, что теперь это будет работать:
.Charts(0).Axes(chAxisPositionCategory).CategoryLabels.PivotAxis.Fields(0).NumberFormat = "mmm yyyy"
все еще не могу сделать группировку, хотя.
1 ответ
Я понимаю, что это старый, но так как это все еще без ответа и для поиска:
Вы можете группировать по датам в OWC11, используя опцию шкалы времени на оси x:
ChartSpace.Charts.Axes[ChartAxisPositionEnum.chAxisPositionTimescale].GroupingType = ChartAxisGroupingEnum.chAxisGroupingNone;
Поведение по умолчанию - группировать даты, используйте перечисление GroupingNone, чтобы отключить это.
@ David-W-Fenton: OWC11 устарел, но находится в расширенной поддержке до 2014 года и по-прежнему доступен для загрузки. Никогда не было замены MS для них, которая имеет все функциональные возможности. Элементы управления диаграммой для.NET 3.5 не позволяют конечному пользователю манипулировать диаграммой таким же образом. Я бы не использовал OWC на веб-сайте из-за проблем безопасности, но я использую их во внутренних приложениях WinForms. Я не знаю другого свободного элемента управления диаграммой, который бы позволял работать с диаграммой того же уровня во время выполнения, что и OWC. (Извините за добавление комментария к ответу, но у меня пока нет права комментировать).