Подскажите пожалуйста, как написать VBA программу, чтобы по нажатию кнопки или вызове определенной функции в строках (например строка 1 диапазон столбцов A-L) в закрашенные определенным цветом ячейки (например желтым) вписывались значения (цифра) находящееся в ячейке 1R, а не закрашенные ячейки оставались нетронутыми.
Соответственно в строке 2 A-L в закрашенные ячейки вставлялось значение с ячейки 2R и так далее по всем строкам.
вам бы сначала в правила заглянуть, там есть пункты о файле примере в которым должны быть исходные данные до работы макроса и отдельно то что хотелось получить после его работы...
Sub Закрасить()
Dim cl As Range
For Each cl In ActiveSheet.UsedRange
Select Case cl.Interior.Color
Case RGB(255, 255, 0)
cl.Value = Cells(cl.Row, "R")
End Select
Next
End Sub
Нужно наоборот Имеются закрашенные ячейки и в них по нажатию созданной на листе кнопки вписываются цифры из соответствующего столбца. Пример прилагается
Sub Наоборот()
Dim cl As Range 'Объявляем переменную типа Range
For Each cl In ActiveSheet.UsedRange 'Перебираем все ячейки в используемой области активного листа
Select Case cl.Interior.Color 'Если цвет ячейки...
Case RGB(255, 255, 0) '... равен жёлтому
cl.Value = Cells(cl.Row, "R") 'Значение ячейки меняем на значение ячейки из той же строки, из столбца R/
End Select 'Завершение 'Если цвет ячейки...
Next 'Завершение перебора ячеек.
End Sub