Подскажите пожалуйста, написала макрос, генерирует случайные числа и те ячейки в которых четные значение закрашивает цветом, ошибка "нужен объект", можете подсказать что не так и почему? файл во вложении
Sub macro()
Dim i, j As Integer
Dim r(1 To 20, 1 To 20) As Variant
'L1.Cells(i, j).Interior.ColorIndex = 0
For i = 1 To 20
For j = 1 To 20
r(i, j) = 10 * (Rnd()) + 1
Cells(i, j).Value = r(i, j)
If Cells(i, j) Mod 2 = 0 Then
Cells(i, j).Interior.ColorIndex = 5
End If
Next j
Next i
End Sub
Lilo_255 написал: ...вот это 'L1.Cells(i, j).Interior.ColorIndex = 0 в комментах, мне же нужно ну по идее очистить ячейки от заливки
в комментах - потому что оно не работает и в целом строчка лишенная при Ваших запросах смысла: 1. где до этой строчки вы указывали чему равно i и j? 2. если вы укажите i и j - то макрос обесцветит только одну ячейку -> нужно делать цикл, но в Вашем случае гораздо проще выделить диапазон без цикла и его обесцветить
Для очистки можете использовать Range(Cells(1, 1), Cells(20, 20)).Select
Range(Cells(1, 1), Cells(20, 20)).Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Dim i, j As Integer
Dim r(1 To 20, 1 To 20) As Variant
'L1.Cells(i, j).Interior.ColorIndex = 0
For i = 1 To 20
For j = 1 To 20
r(i, j) = 10 * (Rnd()) + 1
Cells(i, j).Value = Round(r(i, j), 0) 'убираем дробную часть
If Cells(i, j) Mod 2 = 0 Then
Cells(i, j).Interior.ColorIndex = 5
End If
Next j
Next i