Некорректно отображается дата при формировании отчета.
parovoznik
Дата: Воскресенье, 04.12.2016, 01:16 |
Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 440
Репутация:
26
±
Замечаний:
0% ±
Excel 2013
Доброго времени суток. В процессе работы столкнулся с такой проблемой . При формировании отчета за указанный период -дата указывается в формате Общий. И после формирования отчета нужно каждый раз изменять формат даты в ручную. Можно этот недочет устранить?
Доброго времени суток. В процессе работы столкнулся с такой проблемой . При формировании отчета за указанный период -дата указывается в формате Общий. И после формирования отчета нужно каждый раз изменять формат даты в ручную. Можно этот недочет устранить? parovoznik
Ответить
Сообщение Доброго времени суток. В процессе работы столкнулся с такой проблемой . При формировании отчета за указанный период -дата указывается в формате Общий. И после формирования отчета нужно каждый раз изменять формат даты в ручную. Можно этот недочет устранить? Автор - parovoznik Дата добавления - 04.12.2016 в 01:16
Wasilich
Дата: Воскресенье, 04.12.2016, 01:56 |
Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация:
326
±
Замечаний:
0% ±
2003
В коде формирования отчета, эта строка [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).Clear
[/vba]чистит отчет удаляя всё, и форматы тоже. Можно и по другому сделать, хотя наверное, просто добавить в цикле For i = 4 строчку [vba]Код
.Cells(LR, 2).NumberFormat = "m/d/yyyy"
[/vba]
В коде формирования отчета, эта строка [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).Clear
[/vba]чистит отчет удаляя всё, и форматы тоже. Можно и по другому сделать, хотя наверное, просто добавить в цикле For i = 4 строчку [vba]Код
.Cells(LR, 2).NumberFormat = "m/d/yyyy"
[/vba] Wasilich
Сообщение отредактировал Wasilich - Воскресенье, 04.12.2016, 02:10
Ответить
Сообщение В коде формирования отчета, эта строка [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).Clear
[/vba]чистит отчет удаляя всё, и форматы тоже. Можно и по другому сделать, хотя наверное, просто добавить в цикле For i = 4 строчку [vba]Код
.Cells(LR, 2).NumberFormat = "m/d/yyyy"
[/vba] Автор - Wasilich Дата добавления - 04.12.2016 в 01:56
_Boroda_
Дата: Воскресенье, 04.12.2016, 03:16 |
Сообщение № 3
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16654
Репутация:
6475
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
ClearContents чистит только значения, без форматов
ClearContents чистит только значения, без форматов _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение ClearContents чистит только значения, без форматов Автор - _Boroda_ Дата добавления - 04.12.2016 в 03:16
parovoznik
Дата: Воскресенье, 04.12.2016, 08:15 |
Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 440
Репутация:
26
±
Замечаний:
0% ±
Excel 2013
Wasilich, добавил строку .Cells(LR, 2).NumberFormat = "m/d/yyyy". Вообще ничего не отображается в отчете в колонке дата
Wasilich, добавил строку .Cells(LR, 2).NumberFormat = "m/d/yyyy". Вообще ничего не отображается в отчете в колонке дата parovoznik
Ответить
Сообщение Wasilich, добавил строку .Cells(LR, 2).NumberFormat = "m/d/yyyy". Вообще ничего не отображается в отчете в колонке дата Автор - parovoznik Дата добавления - 04.12.2016 в 08:15
nilem
Дата: Воскресенье, 04.12.2016, 09:07 |
Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1612
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
вместо этой строки [vba]Код
.Cells(LR, 2).NumberFormat = "m/d/yyyy"
[/vba] напишите [vba]Код
.Cells(LR, 2) = Cells(i, 2)
[/vba] а вместо этой строки [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).Clear 'Очистили диапазон отчета полностью
[/vba] напишите [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).ClearContents 'Очистили диапазон отчета полностью
[/vba] а эта строка лишняя [vba]Код
.Cells(2, 2).ClearContents 'Очистили ЗНАЧЕНИЯ в шапке отчета
[/vba] Рамочки можно нарисовать с помощью УФ
вместо этой строки [vba]Код
.Cells(LR, 2).NumberFormat = "m/d/yyyy"
[/vba] напишите [vba]Код
.Cells(LR, 2) = Cells(i, 2)
[/vba] а вместо этой строки [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).Clear 'Очистили диапазон отчета полностью
[/vba] напишите [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).ClearContents 'Очистили диапазон отчета полностью
[/vba] а эта строка лишняя [vba]Код
.Cells(2, 2).ClearContents 'Очистили ЗНАЧЕНИЯ в шапке отчета
[/vba] Рамочки можно нарисовать с помощью УФ nilem
Яндекс.Деньги 4100159601573
Сообщение отредактировал nilem - Воскресенье, 04.12.2016, 09:22
Ответить
Сообщение вместо этой строки [vba]Код
.Cells(LR, 2).NumberFormat = "m/d/yyyy"
[/vba] напишите [vba]Код
.Cells(LR, 2) = Cells(i, 2)
[/vba] а вместо этой строки [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).Clear 'Очистили диапазон отчета полностью
[/vba] напишите [vba]Код
Range(.Cells(5, 1), .Cells(LastRow + 5, 7)).ClearContents 'Очистили диапазон отчета полностью
[/vba] а эта строка лишняя [vba]Код
.Cells(2, 2).ClearContents 'Очистили ЗНАЧЕНИЯ в шапке отчета
[/vba] Рамочки можно нарисовать с помощью УФ Автор - nilem Дата добавления - 04.12.2016 в 09:07
parovoznik
Дата: Воскресенье, 04.12.2016, 15:06 |
Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 440
Репутация:
26
±
Замечаний:
0% ±
Excel 2013
nilem, спасибо. Все работает и кода стало меньше. Пожалуйста прокомментируйте эту строчку кода : Cells(LR, 1).Resize(, 6).Value = Cells(i, 1).Resize(, 6).Value Как Вы сделали границы таблицы? Еще раз благодарю.
nilem, спасибо. Все работает и кода стало меньше. Пожалуйста прокомментируйте эту строчку кода : Cells(LR, 1).Resize(, 6).Value = Cells(i, 1).Resize(, 6).Value Как Вы сделали границы таблицы? Еще раз благодарю. parovoznik
Ответить
Сообщение nilem, спасибо. Все работает и кода стало меньше. Пожалуйста прокомментируйте эту строчку кода : Cells(LR, 1).Resize(, 6).Value = Cells(i, 1).Resize(, 6).Value Как Вы сделали границы таблицы? Еще раз благодарю. Автор - parovoznik Дата добавления - 04.12.2016 в 15:06
nilem
Дата: Воскресенье, 04.12.2016, 15:20 |
Сообщение № 7
Группа: Авторы
Ранг: Старожил
Сообщений: 1612
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
[vba]Код
Cells(i, 1).Resize(, 6).Value
[/vba] Ну прям как написано: берем ячейку Cells(i, 1) и расширяем ее на 6 столбцов, т.е. получаем диапазон, состоящий из одной строки и 6 столбцов А потом переносим значения (Value) из этого диапазона в другой диапазон Cells(LR, 1).Resize(, 6) такого же размера Границы ячеек - с помощью УФ. Там формула =--ДЛСТР ($А3) . Т.е. если в ст. А что-то есть, то применяем условное форматир-е, а именно рамочки
[vba]Код
Cells(i, 1).Resize(, 6).Value
[/vba] Ну прям как написано: берем ячейку Cells(i, 1) и расширяем ее на 6 столбцов, т.е. получаем диапазон, состоящий из одной строки и 6 столбцов А потом переносим значения (Value) из этого диапазона в другой диапазон Cells(LR, 1).Resize(, 6) такого же размера Границы ячеек - с помощью УФ. Там формула =--ДЛСТР ($А3) . Т.е. если в ст. А что-то есть, то применяем условное форматир-е, а именно рамочки nilem
Яндекс.Деньги 4100159601573
Ответить
Сообщение [vba]Код
Cells(i, 1).Resize(, 6).Value
[/vba] Ну прям как написано: берем ячейку Cells(i, 1) и расширяем ее на 6 столбцов, т.е. получаем диапазон, состоящий из одной строки и 6 столбцов А потом переносим значения (Value) из этого диапазона в другой диапазон Cells(LR, 1).Resize(, 6) такого же размера Границы ячеек - с помощью УФ. Там формула =--ДЛСТР ($А3) . Т.е. если в ст. А что-то есть, то применяем условное форматир-е, а именно рамочки Автор - nilem Дата добавления - 04.12.2016 в 15:20
parovoznik
Дата: Воскресенье, 04.12.2016, 15:29 |
Сообщение № 8
Группа: Проверенные
Ранг: Обитатель
Сообщений: 440
Репутация:
26
±
Замечаний:
0% ±
Excel 2013
nilem, формулы не нашел?
Ответить
Сообщение nilem, формулы не нашел? Автор - parovoznik Дата добавления - 04.12.2016 в 15:29
nilem
Дата: Воскресенье, 04.12.2016, 15:35 |
Сообщение № 9
Группа: Авторы
Ранг: Старожил
Сообщений: 1612
Репутация:
563
±
Замечаний:
0% ±
Excel 2013, 2016
На ленте - вкладка Главная - Условное форматирование (в группе Стили) - Управление правилами в появившемся окне сверху "Показать правила форматирования для:" нужно выбрать "Этот лист"
На ленте - вкладка Главная - Условное форматирование (в группе Стили) - Управление правилами в появившемся окне сверху "Показать правила форматирования для:" нужно выбрать "Этот лист" nilem
Яндекс.Деньги 4100159601573
Ответить
Сообщение На ленте - вкладка Главная - Условное форматирование (в группе Стили) - Управление правилами в появившемся окне сверху "Показать правила форматирования для:" нужно выбрать "Этот лист" Автор - nilem Дата добавления - 04.12.2016 в 15:35
parovoznik
Дата: Воскресенье, 04.12.2016, 15:54 |
Сообщение № 10
Группа: Проверенные
Ранг: Обитатель
Сообщений: 440
Репутация:
26
±
Замечаний:
0% ±
Excel 2013
nilem, все разобрался. Спасибо за исчерпывающий ответ
nilem, все разобрался. Спасибо за исчерпывающий ответ parovoznik
Ответить
Сообщение nilem, все разобрался. Спасибо за исчерпывающий ответ Автор - parovoznik Дата добавления - 04.12.2016 в 15:54
Wasilich
Дата: Понедельник, 05.12.2016, 01:55 |
Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1232
Репутация:
326
±
Замечаний:
0% ±
2003
просто добавить в цикле For i = 4 строчку
и больше ничего менять не надо было. Эта строчка задает ячейке формат даты.
просто добавить в цикле For i = 4 строчку
и больше ничего менять не надо было. Эта строчка задает ячейке формат даты. Wasilich
Сообщение отредактировал Wasilich - Понедельник, 05.12.2016, 10:21
Ответить
Сообщение просто добавить в цикле For i = 4 строчку
и больше ничего менять не надо было. Эта строчка задает ячейке формат даты. Автор - Wasilich Дата добавления - 05.12.2016 в 01:55
parovoznik
Дата: Понедельник, 05.12.2016, 07:56 |
Сообщение № 12
Группа: Проверенные
Ранг: Обитатель
Сообщений: 440
Репутация:
26
±
Замечаний:
0% ±
Excel 2013
Wasilich, спасибо.
Ответить
Сообщение Wasilich, спасибо. Автор - parovoznik Дата добавления - 05.12.2016 в 07:56