Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.08.2011, 12:08   #1
impact
Пользователь
 
Регистрация: 26.07.2011
Сообщений: 13
По умолчанию цвет ярлычка заполниного листа

День, добрый! Помогите пожалуйста. Есть около 250 листов в каждом листе одинаковая по формату таблица (количество строк и столбцов на каждой странице совпадает) Надо создать макрос который будет выделять цветом ярлычок листа на которм таблица заполнина, а пустые листы их ярлычок не выделяется цветом. Для примера вкладываю файл (например если лист "болт" заполнин то его ярлычёк становится красного цвета.
В файле небольшое кол-во листо на самом деле их около 250.
Дайте идею плиз !!!!
Вложения
Тип файла: rar пример таблицы.rar (9.7 Кб, 14 просмотров)
impact вне форума Ответить с цитированием
Старый 25.08.2011, 12:31   #2
Watcher_1
Форумчанин
 
Аватар для Watcher_1
 
Регистрация: 22.06.2011
Сообщений: 325
По умолчанию

Ловите!
Не забудьте включить макросы...
Вложения
Тип файла: rar Result.rar (10.3 Кб, 19 просмотров)
Заказать макрос можно на сайте http://excel4you.ru/
Watcher_1 вне форума Ответить с цитированием
Старый 25.08.2011, 12:34   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

А вы не могли бы показать пример заполненного и незаполненного листов?
А то в вашем файле на всех листах одно и то же - и непонятно, то ли эти листы заполнены, то ли нет.

А зачем столько листов?
Разве не удобнее было бы хранить все данные в одной таблице?
EducatedFool вне форума Ответить с цитированием
Старый 25.08.2011, 12:36   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

в Вашем примере, лист "болт" заполнен такими же "болтами" (извините за тавтологию), как и все остальные.
может этот мощный макрос Вам поможет
Код:
Sub FillBlankSheetTab()
  For Each sh In Sheets
    If WorksheetFunction.CountA(sh.[b2:h10]) = 0 Then sh.Tab.Color = 255 Else sh.Tab.Color = 0
  Next
End Sub
признаком заполненного листа в данном алгоритме является наличие хоть чего-нибудь в диапазоне b2:h10
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 25.08.2011, 12:40   #5
Watcher_1
Форумчанин
 
Аватар для Watcher_1
 
Регистрация: 22.06.2011
Сообщений: 325
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
в Вашем примере, лист "болт" заполнен такими же "болтами" (извините за тавтологию), как и все остальные.
может этот мощный макрос Вам поможет
Код:
Sub FillBlankSheetTab()
  For Each sh In Sheets
    If WorksheetFunction.CountA(sh.[b2:h10]) = 0 Then sh.Tab.Color = 255 Else sh.Tab.Color = 0
  Next
End Sub
признаком заполненного листа в данном алгоритме является наличие хоть чего-нибудь в диапазоне b2:h10
Зачем все листы перебирать
Я думаю так проще .... %))))
Код:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    If Application.WorksheetFunction.Count(Sh.Range("B2:H10")) > 0 Then
        Sh.Tab.Color = 255
    Else
        Sh.Tab.Color = 12632256
        
    End If
 End Sub
Заказать макрос можно на сайте http://excel4you.ru/
Watcher_1 вне форума Ответить с цитированием
Старый 25.08.2011, 13:10   #6
impact
Пользователь
 
Регистрация: 26.07.2011
Сообщений: 13
По умолчанию

Watcher_1 всё работает просто на ура !!!!
impact вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ссылка ячеек одного листа на ячейки другого листа n0str0m0 Microsoft Office Excel 10 31.12.2011 12:11
отображение данных первого листа, при активации ячейки второго листа Akmal-Sharipov Microsoft Office Excel 4 03.12.2010 14:48
Создание листа с одновременным созданием формулы на ячейку нового листа ShamanK Microsoft Office Excel 4 02.05.2010 22:00
Каким образом можно изменять цвет фона и цвет шрифта в Label? jungle Win Api 17 21.09.2009 00:38
Как програмно изменить цвет ярлычка активного листа? ru3000 Microsoft Office Excel 9 19.07.2009 22:31