Страницы: 1
RSS
Не изменяется ширина столбиков гистограммы, созданной макросом, Нужно понять причину, почему ширина столбцов фиксируется и метод .GapWidth не дает никакого результата
 
Добрый день,

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

Макрос внутри документа должен формировать защиту от раздопиздящих ручек пользователей, которые будет с файлом работать. При открытии документ откроется в режиме чтения, добавить себя в список исключений за место "name1". Пароль на Project: "pass" без ковычек. Оставляю макрос на случай, что может быть он виноват в том, что ширина столбцов у гистограммы не изменяется.

Данные формируются так:
При создании "этого" документа другой макрос копирует данные с одноименного листа "предыдущей" актуальной версии этого файла на новые листы 1,2,3,4. Сохраняются только значения. Далее происходит маленький update данных и к ним дописывается новая строчка. По этим данным строятся графики.
"Предыдущая" версия этого файла сформировалась макросом, основа ей была специальный "переходной" документ, который содержал только значения, без гистограмм. В "предыдущей" версии ширина столбцов гистограммы менялась.
Теперь же, когда я использую "предыдущую" версию файла (с аналогичными гистограммами) как основу (для "предыдущей" версии файл основа - "переходной"), параметр .Gapwidth и .Overlap для гистограмм в файле-примере не работает. Вроде что-то шевелится, но ширина все равно остается не толще линии.
Помогите понять, что в этом документе не так и где то свойство, которое блокирует изменение ширины столбца гистограммы.
 
Нашел решение, на случай, если кому будет нужно. Было здесь: https://www.reddit.com/r/excel/comments/3rxf9h/why_are_the_bars_on_my_chart_so_­damn_skinny/

Вся беда в формате данных оси Х. Ранее в файле "переходный" даты графиком воспринимались как текст, скорее всего. В "предыдущем" я уже явно определил их как даты. Во втором случае графиком они воспринимались, соответственно, как даты. Оказывается графики, в случае, если ось Х содержит даты (явно указано), могут группировать данные попериодно: день, месяц, год. По умолчанию ставится "дни". У меня данные уже собраны помесячно, а когда он их пытается показать как день, то вынужден сужать бары до линии. Переставив флажок на "месяцы" я получил свои толстенькие столбики как и хотел  :)

Макросом свойство Chart .BaseUnit = xlMonths, если кому надо.

Тему можно закрывать.
Страницы: 1
Наверх