Страницы: 1
RSS
Цвет ячейки в зависимости от цвета другой ячейки
 
Здравствуйте, подскажите пожалуйста, как автоматически залить столбец цветом, таким же как и соседний столбец?
трудно поставить вопрос, прикрепляю файл.
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Me.Range("$A:$A").Interior.Color = Me.Range("$B:$B").Interior.Color
End Sub
Такой способ не помог, у меня 1-й столбец полностью становиться чёрным...
Изменено: vikttur - 04.06.2021 22:17:41
 
Fischer, Здравствуйте
1. Уберите Me
2. Ссылайтесь на цвет одной ячейки
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous, "Me" убрал, а со 2-м пунктом я не пойму, тупенький я :(

Видимо не судьба... придётся вручную красить...
Изменено: Fischer - 04.06.2021 20:47:55
 
Fischer, а зачем Вы код оформили цитатой? Ведь есть для кода специальная кнопка с нужным тегом. Поменяйте.

По теме: соседний столбец - это какой? Справа или слева? Активировали ячейку столбца В - куда код должен глянуть?
Изменено: Юрий М - 04.06.2021 21:15:07
 
Цитата
Юрий М написал:
соседний столбец - это какой?
справа. (столбец B), нужно чтобы такая же окраска была в столбце А.
 
Fischer, а так?
Columns(1).Interior.Color = cells(1,2).Interior.Color
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim LastRow As Long
    If Target.Cells.Count > 1 Then Exit Sub
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    If Not Intersect(Target, Range("B1:B" & LastRow)) Is Nothing Then
        Range("A1:A" & LastRow).Interior.Color = Target.Interior.Color
    End If
End Sub
 
Юрий М, не сработало, вообще ничего не происходит.
 
Jack Famous, а так только одним цветом красит весь столбец.
 
Цитата
Fischer написал:
не сработало, вообще ничего не происходит.
Странно. А почему у меня всё работает? См. файл: активируйте любую ячейку в диапазоне данных столбца В.
 
Fischer, Вы тролль? По-русски не объяснить было, что в соседнем разные цвета??? Гуглите "excel вставить только форматирование"
Если это не то и нужен только цвет, то красоте в цикле
Удачи!
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Цитата
Юрий М написал:
Странно. А почему у меня всё работает? См. файл: активируйте любую ячейку в диапазоне данных столбца В.
Ну немного не то, при изменении цвета ячейки в столбце В, закрашивается весь столбец А таким же цветом.
     

В первом скриншоте как на данный момент, на втором скриншоте как должно быть.
Скрытый текст
 
Цитата
Fischer написал:
подскажите пожалуйста, как автоматически залить столбец цветом, таким же как и соседний столбец
Код
Sub test()
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        Cells(i, 1).Interior.Color = Cells(i, 2).Interior.Color
    Next
End Sub
 
Андрей_26, Во, спасибо Вам большое!  :)
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
        Cells(i, 1).Interior.Color = Cells(i, 2).Interior.Color
    Next
End Sub
а так же всем остальным большое спасибо, кто старался помочь!  :oops:  
 
Цитата
Fischer написал:
немного не то
Как понял из Ваших объяснений - так и сделал.
Цитата
Fischer написал:
вообще ничего не происходит.
А с этим как?  Стало происходить?
 
Цитата
Юрий М написал:
А с этим как?  Стало происходить?
видимо excel заглючел, вообще ни один макрос не запускал.  
Страницы: 1
Наверх