Nickvest
Дата: Суббота, 09.03.2019, 10:44 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Всем привет! Подскажите, пожалуйста, как написать макрос. У меня «Microsoft Office 2010». Нужен макрос, для файла «Табель», состоящий из таблиц по месяцам. (два варианта: 1 - все таблицы на одном листе; 2 – каждый месяц на отдельном листе). Суть макроса: В ячейке к примеру «А1» вручную устанавливается год. При нажатии на кнопку «Очистить»: 1. Макрос удаляет данные из диапазона ячеек, где проставляются часы. 2. Удаляет заливку цветом диапазона ячеек (суббота и воскресенье). 3. Заливает цветом новый диапазона ячеек (суббота и воскресенье) с учётом года в ячейке «А1». 4. Учитывает високосный год или нет в таблице Февраля, соответственно добавляя или удаляя данные из ячейки «29 февраля». Если отсутствует, то заливает жёлтым цветом. 5. Ну и если бы возможно было, то и залить цветом диапазона ячеек «праздничные дни» другим цветом. ----------------------------------------------------------------------------------------------------------- Макросы для удаления заливки: Вариант №1 Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Range("B16:AC21").Interior.ColorIndex = xlColorIndexAutomatic Range("B24:AF29").Interior.ColorIndex = xlColorIndexAutomatic Range("B32:AE37").Interior.ColorIndex = xlColorIndexAutomatic Range("B40:AF45").Interior.ColorIndex = xlColorIndexAutomatic Range("B48:AE53").Interior.ColorIndex = xlColorIndexAutomatic Range("B56:AF61").Interior.ColorIndex = xlColorIndexAutomatic Range("B64:AF69").Interior.ColorIndex = xlColorIndexAutomatic Range("B72:AE77").Interior.ColorIndex = xlColorIndexAutomatic Range("B80:AF85").Interior.ColorIndex = xlColorIndexAutomatic Range("B88:AE93").Interior.ColorIndex = xlColorIndexAutomatic Range("B96:AF101").Interior.ColorIndex = xlColorIndexAutomatic ----------------------------------------------------------------------------------------------------------- Вариант №2 Sheets("Январь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Февраль").Range("B8:AD13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Март").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Апрель").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Май").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Июнь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Июль").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Август").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Сентябрь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Октябрь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Ноябрь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Декабрь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic ----------------------------------------------------------------------------------------------------------- Пока их не вставляю. Пароль на защиту листа: 111
Всем привет! Подскажите, пожалуйста, как написать макрос. У меня «Microsoft Office 2010». Нужен макрос, для файла «Табель», состоящий из таблиц по месяцам. (два варианта: 1 - все таблицы на одном листе; 2 – каждый месяц на отдельном листе). Суть макроса: В ячейке к примеру «А1» вручную устанавливается год. При нажатии на кнопку «Очистить»: 1. Макрос удаляет данные из диапазона ячеек, где проставляются часы. 2. Удаляет заливку цветом диапазона ячеек (суббота и воскресенье). 3. Заливает цветом новый диапазона ячеек (суббота и воскресенье) с учётом года в ячейке «А1». 4. Учитывает високосный год или нет в таблице Февраля, соответственно добавляя или удаляя данные из ячейки «29 февраля». Если отсутствует, то заливает жёлтым цветом. 5. Ну и если бы возможно было, то и залить цветом диапазона ячеек «праздничные дни» другим цветом. ----------------------------------------------------------------------------------------------------------- Макросы для удаления заливки: Вариант №1 Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Range("B16:AC21").Interior.ColorIndex = xlColorIndexAutomatic Range("B24:AF29").Interior.ColorIndex = xlColorIndexAutomatic Range("B32:AE37").Interior.ColorIndex = xlColorIndexAutomatic Range("B40:AF45").Interior.ColorIndex = xlColorIndexAutomatic Range("B48:AE53").Interior.ColorIndex = xlColorIndexAutomatic Range("B56:AF61").Interior.ColorIndex = xlColorIndexAutomatic Range("B64:AF69").Interior.ColorIndex = xlColorIndexAutomatic Range("B72:AE77").Interior.ColorIndex = xlColorIndexAutomatic Range("B80:AF85").Interior.ColorIndex = xlColorIndexAutomatic Range("B88:AE93").Interior.ColorIndex = xlColorIndexAutomatic Range("B96:AF101").Interior.ColorIndex = xlColorIndexAutomatic ----------------------------------------------------------------------------------------------------------- Вариант №2 Sheets("Январь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Февраль").Range("B8:AD13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Март").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Апрель").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Май").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Июнь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Июль").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Август").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Сентябрь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Октябрь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Ноябрь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Декабрь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic ----------------------------------------------------------------------------------------------------------- Пока их не вставляю. Пароль на защиту листа: 111 Nickvest
Сообщение отредактировал Nickvest - Суббота, 09.03.2019, 12:47
Ответить
Сообщение Всем привет! Подскажите, пожалуйста, как написать макрос. У меня «Microsoft Office 2010». Нужен макрос, для файла «Табель», состоящий из таблиц по месяцам. (два варианта: 1 - все таблицы на одном листе; 2 – каждый месяц на отдельном листе). Суть макроса: В ячейке к примеру «А1» вручную устанавливается год. При нажатии на кнопку «Очистить»: 1. Макрос удаляет данные из диапазона ячеек, где проставляются часы. 2. Удаляет заливку цветом диапазона ячеек (суббота и воскресенье). 3. Заливает цветом новый диапазона ячеек (суббота и воскресенье) с учётом года в ячейке «А1». 4. Учитывает високосный год или нет в таблице Февраля, соответственно добавляя или удаляя данные из ячейки «29 февраля». Если отсутствует, то заливает жёлтым цветом. 5. Ну и если бы возможно было, то и залить цветом диапазона ячеек «праздничные дни» другим цветом. ----------------------------------------------------------------------------------------------------------- Макросы для удаления заливки: Вариант №1 Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Range("B16:AC21").Interior.ColorIndex = xlColorIndexAutomatic Range("B24:AF29").Interior.ColorIndex = xlColorIndexAutomatic Range("B32:AE37").Interior.ColorIndex = xlColorIndexAutomatic Range("B40:AF45").Interior.ColorIndex = xlColorIndexAutomatic Range("B48:AE53").Interior.ColorIndex = xlColorIndexAutomatic Range("B56:AF61").Interior.ColorIndex = xlColorIndexAutomatic Range("B64:AF69").Interior.ColorIndex = xlColorIndexAutomatic Range("B72:AE77").Interior.ColorIndex = xlColorIndexAutomatic Range("B80:AF85").Interior.ColorIndex = xlColorIndexAutomatic Range("B88:AE93").Interior.ColorIndex = xlColorIndexAutomatic Range("B96:AF101").Interior.ColorIndex = xlColorIndexAutomatic ----------------------------------------------------------------------------------------------------------- Вариант №2 Sheets("Январь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Февраль").Range("B8:AD13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Март").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Апрель").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Май").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Июнь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Июль").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Август").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Сентябрь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Октябрь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Ноябрь").Range("B8:AE13").Interior.ColorIndex = xlColorIndexAutomatic Sheets("Декабрь").Range("B8:AF13").Interior.ColorIndex = xlColorIndexAutomatic ----------------------------------------------------------------------------------------------------------- Пока их не вставляю. Пароль на защиту листа: 111 Автор - Nickvest Дата добавления - 09.03.2019 в 10:44
Nickvest
Дата: Воскресенье, 17.03.2019, 21:19 |
Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 2
Репутация:
0
±
Замечаний:
0% ±
Excel 2010
Всё, всем спасибо! Задача решена.
Всё, всем спасибо! Задача решена. Nickvest
Ответить
Сообщение Всё, всем спасибо! Задача решена. Автор - Nickvest Дата добавления - 17.03.2019 в 21:19