Страницы: 1
RSS
Заливка "заглавной" ячейки исходя из цвета ячеек в диапазоне, заливка ячеек
 
всем привет
Хелп)
в приложенном файле, есть столбец и заголовок столбца строка 1 в данном случае
Ячейку F1 закрасить цветом из диапазона F2:F9 (может быть не 9 а 15 или 20,
в данном диапазоне цвет будет один (всегда закрашена или одна или не одной= пусто).

заранее благодарен!
 
Код
Sub ColorRow1()
  Dim c As Range, r&
  For Each c In [f1:m1]
    For r = 1 To 8
      If c.Offset(r).Interior.Pattern = 1 Then
        c.Interior.Color = c.Offset(r).Interior.Color: Exit For
      End If
    Next
  Next
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
огромное спасибо)!!! пушка))
короткий вопрос) а если мне нужно на листе таким образом заливать несколько диапазонов)
как мне в одном макросе указать несколько диапазонов для заливки и диапазон где выбирать цвет заливки.  спасибо

тут типа залить это  For Each c In [f1:m1]  
цвет выбрать тут For r = 1 To 8

а нужно еще
залить это  For Each c In [f50:m50]
цвет брать тут   For r = 1 To 14  (подразумеваем f51 52 53 и так до 51+14)
что бы это все работало в одном макросе, попробовал тупо скопировать в один лист макроса, поменял диапазону) говорит ошибка типа синтаксиса)


+ еще бы хотелось,  что бы макрос отрабатывал при сохранении книги  и\или при ее открытии.  спасибо)  
Изменено: Дмитрий ССС - 19.01.2022 10:29:24
 
переписать ColorRow1 вот так:
Код
Sub ColorRow1(rg As Range)  
  Dim c As Range, r&
  For Each c In rg.Row(1).Cells
    For r = 1 To rg.Rows.Count - 1
      If c.Offset(r).Interior.Pattern = 1 Then
        c.Interior.Color = c.Offset(r).Interior.Color: Exit For
      End If
    Next
  Next
End Sub
и выполнить
Код
Sub Main()
  ColorRow1 [f1:m9]
  ColorRow1 [f50:m64]
End Sub
Цитата
+ еще бы хотелось,  что бы макрос отрабатывал при сохранении книги  и\или при ее открытии
это уже второй вопрос, а вы еще за первый не рассчитались
Изменено: Ігор Гончаренко - 19.01.2022 20:04:11
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
Страницы: 1
Читают тему (гостей: 1)
Наверх