Добрый день! Вроде легкий вопрос, но так и не получилось самому сделать рабочий код. Необходимо сделать заливку ячейки/строки, по значению в ячейке. При записи данных из формы, значение из формы ищется на листе и должна сменится заливка ячейки. Сделал такой код: [vba]
Код
iRow = Sheets("Журнал ИБ").Range(Cells(4, 1), Sheets("Журнал ИБ").Cells(Cells(Rows.Count, 1).End(xlUp).Row, 1)).Find(akt2).Offset(, 0) For c = 1 To 21 Sheets("Журнал ИБ").Cells(iRow, c).Interior.Color = RGB(153, 255, 51) Next c
[/vba] Но iRow переписывается строчными буквами и становится как обычная переменная, присваивая себе значение ячейки, а не ее номер.
Добрый день! Вроде легкий вопрос, но так и не получилось самому сделать рабочий код. Необходимо сделать заливку ячейки/строки, по значению в ячейке. При записи данных из формы, значение из формы ищется на листе и должна сменится заливка ячейки. Сделал такой код: [vba]
Код
iRow = Sheets("Журнал ИБ").Range(Cells(4, 1), Sheets("Журнал ИБ").Cells(Cells(Rows.Count, 1).End(xlUp).Row, 1)).Find(akt2).Offset(, 0) For c = 1 To 21 Sheets("Журнал ИБ").Cells(iRow, c).Interior.Color = RGB(153, 255, 51) Next c
[/vba] Но iRow переписывается строчными буквами и становится как обычная переменная, присваивая себе значение ячейки, а не ее номер.Паштет
Сообщение отредактировал Паштет - Среда, 18.07.2018, 14:07
И у Вас там вообще неверно написано. К Келлс нет листаю К Rows тоже [vba]
Код
With Sheets("Журнал ИБ") iRow = .Range(.Cells(4, 1), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, 1)).Find(akt2).Row 'или так iRow = .Cells(4, 1).Resize(.Cells(.Rows.Count, 1).End(xlUp).Row - 3).Find(akt2).Row For c = 1 To 21 .Cells(iRow, c).Interior.Color = RGB(153, 255, 51) Next c End With
[/vba]
в первую строку в конец допишите .Row
И у Вас там вообще неверно написано. К Келлс нет листаю К Rows тоже [vba]
Код
With Sheets("Журнал ИБ") iRow = .Range(.Cells(4, 1), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, 1)).Find(akt2).Row 'или так iRow = .Cells(4, 1).Resize(.Cells(.Rows.Count, 1).End(xlUp).Row - 3).Find(akt2).Row For c = 1 To 21 .Cells(iRow, c).Interior.Color = RGB(153, 255, 51) Next c End With