Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Даты на Диаграмме - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Даты на Диаграмме (Макросы/Sub)
Даты на Диаграмме
Vostok Дата: Понедельник, 27.04.2015, 12:21 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 1 ±
Замечаний: 40% ±

Excel 2010
При загрузке данных на лист, чтобы даты принимали адекватный вид (вместо абракадабры)

применяю пользовательский формат:
[vba]
Код
With rngStart.Resize(UBound(M, 1), UBound(M, 2) + 1)
       .Value = M                    'выгружаем массив с исходными данными
       .Columns(1).NumberFormat = "dd.mm.yyyy"    'пользовательский формат даты
End With
[/vba]
Но при этом на диаграмме даты отображаются, мягко сказать, не красиво:

Пока не нажмёшь "Сохранить" даты свой "человеческий" вид не принимают. Казалось бы, не сложно, но уже Достало постоянно сохраняться. Кто нибудь сталкивался с проблемой?
[moder]Очередное напоминание про необходимость следования Правилам форума.
Ну и предупредительное замечание - ибо сколько можно уже!
Почитайте Правила еще раз. Особенно п. 3 и п. 5b (предупредительно).


"Посылая кого-то в Google, Помните, завтра туда могут Послать Вас !"

Сообщение отредактировал _Boroda_ - Понедельник, 27.04.2015, 12:28
 
Ответить
СообщениеПри загрузке данных на лист, чтобы даты принимали адекватный вид (вместо абракадабры)

применяю пользовательский формат:
[vba]
Код
With rngStart.Resize(UBound(M, 1), UBound(M, 2) + 1)
       .Value = M                    'выгружаем массив с исходными данными
       .Columns(1).NumberFormat = "dd.mm.yyyy"    'пользовательский формат даты
End With
[/vba]
Но при этом на диаграмме даты отображаются, мягко сказать, не красиво:

Пока не нажмёшь "Сохранить" даты свой "человеческий" вид не принимают. Казалось бы, не сложно, но уже Достало постоянно сохраняться. Кто нибудь сталкивался с проблемой?
[moder]Очередное напоминание про необходимость следования Правилам форума.
Ну и предупредительное замечание - ибо сколько можно уже!
Почитайте Правила еще раз. Особенно п. 3 и п. 5b (предупредительно).

Автор - Vostok
Дата добавления - 27.04.2015 в 12:21
Vostok Дата: Четверг, 30.04.2015, 10:27 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 1 ±
Замечаний: 40% ±

Excel 2010
Модератор:
Очередное напоминание про необходимость следования Правилам форума.
Ну и предупредительное замечание - ибо сколько можно уже!
Почитайте Правила еще раз. Особенно п. 3 и п. 5b (предупредительно).

Простите великодушно, но я не совсем понял суть претензии. Просто хочу внести ясность, чтобы не попадать в такие ситуации в дальнейшем.
1. п. 3 - "...Темы касающиеся конкретного файла, но без приложенного примера, будут закрываться или удаляться. ..."
А как быть, если прилагаемый файл ну просто никак не возможно привести к размеру 100 Кб? Что можно сделать в этом случае? Вообще не задавать вопрос? Если так, то так и буду делать.
2. п. 5b - "... запрещается обсуждать действия Администрации сайта ..."
Разве в моём сообщение есть нечто подобное? Спасибо.
[moder]Про п. 5 в скобочках что написано? Я помню, как в прошлых своих темах Вы спорить начинали (да и здесь тоже).
Как быть - нарисовать другой файл с похожим примером. Нам не нужен Ваш родной файл с кучей не имеющих отношения к вопросу данных, нам нужен пример для поиграться.


"Посылая кого-то в Google, Помните, завтра туда могут Послать Вас !"

Сообщение отредактировал _Boroda_ - Четверг, 30.04.2015, 10:57
 
Ответить
Сообщение
Модератор:
Очередное напоминание про необходимость следования Правилам форума.
Ну и предупредительное замечание - ибо сколько можно уже!
Почитайте Правила еще раз. Особенно п. 3 и п. 5b (предупредительно).

Простите великодушно, но я не совсем понял суть претензии. Просто хочу внести ясность, чтобы не попадать в такие ситуации в дальнейшем.
1. п. 3 - "...Темы касающиеся конкретного файла, но без приложенного примера, будут закрываться или удаляться. ..."
А как быть, если прилагаемый файл ну просто никак не возможно привести к размеру 100 Кб? Что можно сделать в этом случае? Вообще не задавать вопрос? Если так, то так и буду делать.
2. п. 5b - "... запрещается обсуждать действия Администрации сайта ..."
Разве в моём сообщение есть нечто подобное? Спасибо.
[moder]Про п. 5 в скобочках что написано? Я помню, как в прошлых своих темах Вы спорить начинали (да и здесь тоже).
Как быть - нарисовать другой файл с похожим примером. Нам не нужен Ваш родной файл с кучей не имеющих отношения к вопросу данных, нам нужен пример для поиграться.

Автор - Vostok
Дата добавления - 30.04.2015 в 10:27
Manyasha Дата: Четверг, 30.04.2015, 10:44 | Сообщение № 3
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Vostok, а Вы хотя бы попытались урезать свой файл до разрешенных размеров? Вот сейчас в голову даже не приходит, какая должна быть проблема, чтобы 100кб-го файла не хватило на ее описание.
Приложила за Вас файл пример: после нажатия на кнопку, даты на диаграмме "портятся"
К сообщению приложен файл: test_date.xlsm (18.2 Kb) · 4498341.gif (25.3 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеVostok, а Вы хотя бы попытались урезать свой файл до разрешенных размеров? Вот сейчас в голову даже не приходит, какая должна быть проблема, чтобы 100кб-го файла не хватило на ее описание.
Приложила за Вас файл пример: после нажатия на кнопку, даты на диаграмме "портятся"

Автор - Manyasha
Дата добавления - 30.04.2015 в 10:44
Vostok Дата: Четверг, 30.04.2015, 11:15 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 1 ±
Замечаний: 40% ±

Excel 2010
Vostok, а Вы хотя бы попытались урезать свой файл до разрешенных размеров?

Конечно. Этот макрос входит в состав файла который весит 7,75 Мб, и я его уже пытался урезать вот в этой ветке: http://www.excelworld.ru/forum/10-17054-1
Приложила за Вас файл пример: после нажатия на кнопку, даты на диаграмме "портятся"
Вот тут реально не понял. Точнее не увидел решения проблемы или его там нет? Это просто пример создания аналогичного файла?


"Посылая кого-то в Google, Помните, завтра туда могут Послать Вас !"

Сообщение отредактировал Vostok - Четверг, 30.04.2015, 11:16
 
Ответить
Сообщение
Vostok, а Вы хотя бы попытались урезать свой файл до разрешенных размеров?

Конечно. Этот макрос входит в состав файла который весит 7,75 Мб, и я его уже пытался урезать вот в этой ветке: http://www.excelworld.ru/forum/10-17054-1
Приложила за Вас файл пример: после нажатия на кнопку, даты на диаграмме "портятся"
Вот тут реально не понял. Точнее не увидел решения проблемы или его там нет? Это просто пример создания аналогичного файла?

Автор - Vostok
Дата добавления - 30.04.2015 в 11:15
Vostok Дата: Четверг, 30.04.2015, 11:21 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 1 ±
Замечаний: 40% ±

Excel 2010
Модератор:
.... Я помню, как в прошлых своих темах Вы спорить начинали (да и здесь тоже).
Как быть - нарисовать другой файл с похожим примером. .....

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


"Посылая кого-то в Google, Помните, завтра туда могут Послать Вас !"

Сообщение отредактировал Vostok - Четверг, 30.04.2015, 11:24
 
Ответить
Сообщение
Модератор:
.... Я помню, как в прошлых своих темах Вы спорить начинали (да и здесь тоже).
Как быть - нарисовать другой файл с похожим примером. .....

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

Автор - Vostok
Дата добавления - 30.04.2015 в 11:21
Manyasha Дата: Четверг, 30.04.2015, 11:28 | Сообщение № 6
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
не увидел решения проблемы
Это не решение
просто пример создания аналогичного файла
Да.
Вы же правильно выявили проблему: даты слетают после форматирования, я Вам показала, как это можно "нарисовать" в файле, и для этого совсем не потребовалось прикладывать файл в 7,75 мб.
Решать сейчас не могу, а для людей, которые захотят Вам помочь
нужен пример для поиграться
В следующий раз постарайтесь сотворить такой файл самостоятельно.


ЯД: 410013299366744 WM: R193491431804
 
Ответить
Сообщение
не увидел решения проблемы
Это не решение
просто пример создания аналогичного файла
Да.
Вы же правильно выявили проблему: даты слетают после форматирования, я Вам показала, как это можно "нарисовать" в файле, и для этого совсем не потребовалось прикладывать файл в 7,75 мб.
Решать сейчас не могу, а для людей, которые захотят Вам помочь
нужен пример для поиграться
В следующий раз постарайтесь сотворить такой файл самостоятельно.

Автор - Manyasha
Дата добавления - 30.04.2015 в 11:28
nilem Дата: Четверг, 30.04.2015, 19:44 | Сообщение № 7
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
а если попробовать обычный формат?:
[vba]
Код
Sheets(1).Columns(1).NumberFormat = "m/d/yyyy"
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениеа если попробовать обычный формат?:
[vba]
Код
Sheets(1).Columns(1).NumberFormat = "m/d/yyyy"
[/vba]

Автор - nilem
Дата добавления - 30.04.2015 в 19:44
Manyasha Дата: Пятница, 01.05.2015, 09:31 | Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация: 898 ±
Замечаний: 0% ±

Excel 2010, 2016
Интересно, что на 2007-м экселе все срабатывает нормально, никаких проблем.
Попробовала добавить еще проставление формата оси, тогда на 2010-м все значения на оси отображаются как даты, но в каком-то неправильном порядке (не по возрастанию). Правильный вид ось принимает только после изменения какой-нибудь ячейки с датой. Как-то глупо получается конечно, но вдруг поможет
[vba]
Код
    With Sheets(1)
         .Columns(1).NumberFormat = "dd.mm.yyyy"    'пользовательский формат даты
         .ChartObjects(1).Chart.Axes(xlCategory).TickLabels.NumberFormat = "dd.mm.yyyy"
         temp = Range("a2")
         Range("a2") = Date
         Range("a2") = temp
     End With
[/vba]
К сообщению приложен файл: test_date1.xlsm (18.6 Kb)


ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеИнтересно, что на 2007-м экселе все срабатывает нормально, никаких проблем.
Попробовала добавить еще проставление формата оси, тогда на 2010-м все значения на оси отображаются как даты, но в каком-то неправильном порядке (не по возрастанию). Правильный вид ось принимает только после изменения какой-нибудь ячейки с датой. Как-то глупо получается конечно, но вдруг поможет
[vba]
Код
    With Sheets(1)
         .Columns(1).NumberFormat = "dd.mm.yyyy"    'пользовательский формат даты
         .ChartObjects(1).Chart.Axes(xlCategory).TickLabels.NumberFormat = "dd.mm.yyyy"
         temp = Range("a2")
         Range("a2") = Date
         Range("a2") = temp
     End With
[/vba]

Автор - Manyasha
Дата добавления - 01.05.2015 в 09:31
Vostok Дата: Пятница, 01.05.2015, 10:23 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 1 ±
Замечаний: 40% ±

Excel 2010
Sheets(1).Columns(1).NumberFormat = "m/d/yyyy"
Для представления даты вида, указанного выше в моём примере (30.04.2015) работает отлично. Проблема решается. А вот для дат представленных вместе со временем (01.05.2015 11:00:00)
[vba]
Код
.Columns(1).NumberFormat = "dd.mm.yy hh:mm"
[/vba]
подобрать вариацию мне не удалось. Помог этот вариант:
.ChartObjects(1).Chart.Axes(xlCategory).TickLabels.NumberFormat = "dd.mm.yyyy"
А вот тайный смысл нижеследующего кода
[vba]
Код
        temp = Range("a2")
          Range("a2") = Date
          Range("a2") = temp
[/vba] постичь мне не удалось. Но это уже не имеет значения. Всем Огромное Спасибо. Конец неврозу.
P.S. И самое интересное, попробовал применить второе решение и прописать формат дат в код оси категорий в случае когда даты представлены в варианте - 30.04.2015, график дал сбой, отказала полоса прокрутки и т.д. Воистину Excel иной раз непредсказуем.


"Посылая кого-то в Google, Помните, завтра туда могут Послать Вас !"

Сообщение отредактировал Vostok - Пятница, 01.05.2015, 10:26
 
Ответить
Сообщение
Sheets(1).Columns(1).NumberFormat = "m/d/yyyy"
Для представления даты вида, указанного выше в моём примере (30.04.2015) работает отлично. Проблема решается. А вот для дат представленных вместе со временем (01.05.2015 11:00:00)
[vba]
Код
.Columns(1).NumberFormat = "dd.mm.yy hh:mm"
[/vba]
подобрать вариацию мне не удалось. Помог этот вариант:
.ChartObjects(1).Chart.Axes(xlCategory).TickLabels.NumberFormat = "dd.mm.yyyy"
А вот тайный смысл нижеследующего кода
[vba]
Код
        temp = Range("a2")
          Range("a2") = Date
          Range("a2") = temp
[/vba] постичь мне не удалось. Но это уже не имеет значения. Всем Огромное Спасибо. Конец неврозу.
P.S. И самое интересное, попробовал применить второе решение и прописать формат дат в код оси категорий в случае когда даты представлены в варианте - 30.04.2015, график дал сбой, отказала полоса прокрутки и т.д. Воистину Excel иной раз непредсказуем.

Автор - Vostok
Дата добавления - 01.05.2015 в 10:23
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Даты на Диаграмме (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!