Макрос на VBA помогите

Узнай цену своей работы

Формулировка задачи:

Вобщем только только начал учится программировать(вчера^^) и не могу справится с простейшей задачей, надеюсь здесь мне помогут.
нужно организовать цикл по ячейкам, при нахождении ячейки с заливкой, макрос заливал(тем же цветом) всю строку с данными, и далее сразу переходил на след строку и повторял те же действия.
я писал примерно так(строго не судите если даже здесь бред написан:) ):
Sub macro1()
Dim i As Integer, j As Integer
iRow = ActiveSheet.UsedRange.Row + ActiveSheet.UsedRange.Rows.Count - 1
iClm = ActiveSheet.UsedRange.Column + ActiveSheet.UsedRange.Columns.Count - 1
For i = ActiveSheet.UsedRange.Row To iRow
For j = ActiveSheet.UsedRange.Column To iClm
If Range(i, j).Interior.ColorIndex <> xlColorIndexNone Then
Range(i, j).Copy
Range(ActiveCell.End(xlToLeft), ActiveCell.End(xlToRight)).PasteSpecial Paste:=xlFormats
ActiveCell.Offset(1, 0).Select
End If
Next i
Next j
End Sub
но выдает ошибку. помогите наставить на путь истинный.
А если не сложно то объясните как делать цикл перебора по строкам по столбцам по каждой ячейки,
заранее благодарю.
P.s файл приложил

Решение задачи: «Макрос на VBA помогите»

textual
Листинг программы
<font color="blue">dim</font> c <font color="blue">as</font> Range
<font color="blue">for</font> <font color="blue">each</font> c <font color="blue">in</font> ActiveSheet.UsedRange
    <font color="blue">if</font> c.Interior.ColorIndex <> xlColorIndexNone <font color="blue">Then</font>
        c.EntireRow.ColorIndex = c.Interior.ColorIndex
   <font color="blue">end</font> <font color="blue">if</font>
<font color="blue">next</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы