```1c
    Процедура ТоварыПоФактуПриИзменении(Элемент)

    Если Элемент <> ???.Количество Тогда
    Элемент.Оформление.ЦветТекста = WebЦвета.Красный;
    Иначе
    Элемент.Оформление.ЦветТекста = WebЦвета.Зелёный;
    КонецЕсли;

    КонецПроцедуры
```

При изменении значения, хочу окрашивать текст в ячейке согласно некоторому условию.
Для этого создаю процедуру "ПриИзменении", где проверяется условие, но не знаю как имея ячейку строки обратиться к другой ячейке этой строки.

Элемент - моя ячейка. Она находится в строке, где есть поле "Количество". Подскажите, как к нему обратиться?
---
Элемент это не ячейка. Элемент это столбец. Соответственно, вы поменяете оформление всего столбца. Используйте УсловноеОформление формы.
---
Оно конечно хорошо, но мне бы проверять условие при изменении поля "ПоФакту"
Не. В ОФ это не так работает. Доступ к оформлению доступен только в событиях ПриВыводеСтроки() и ПриПолученииДанных().
Там все и делай. Эти события платформа автоматически вызывает при отрисовке, а отрисовка автоматически происходит при изменении отображаемых данных.
Так что все нормально будет.
ПриВыводеСтроки() используй только если нет обращений к БД. Обращения к БД делай запросом сразу на всю порцию отрисовываемых данных в ПриПолученииДанных() - это значительно уменьшит тормоза.
---
у меня УТ 10.3 (обычные формы).

Я так понимаю мне в процедуре ПриПолученииДанных или ПриВыводеСтроки нужно прописать оформление:

```1c
    Если ДанныеСтроки.Количество <> ДанныеСтроки.ПоФакту Тогда
    ОформлениеСтроки.Ячейки.ПоФакту = WebЦвета.Красный;
    Иначе
    ОформлениеСтроки.Ячейки.ПоФакту = WebЦвета.Зеленый;
    КонецЕсли;
```
---
Элемент это не ячейка. Элемент это столбец. Соответственно, вы поменяете оформление всего столбца. Используйте УсловноеОформление формы.
---
у меня УТ 10.3 (обычные формы).

Я так понимаю мне в процедуре ПриПолученииДанных или ПриВыводеСтроки нужно прописать оформление:

```1c
    Если ДанныеСтроки.Количество <> ДанныеСтроки.ПоФакту Тогда
    ОформлениеСтроки.Ячейки.ПоФакту = WebЦвета.Красный;
    Иначе
    ОформлениеСтроки.Ячейки.ПоФакту = WebЦвета.Зеленый;
    КонецЕсли;
```
---
ПриВыводеСтроки
---
Оно конечно хорошо, но мне бы проверять условие при изменении поля "ПоФакту", а там нет параметров ОформлениеСтроки и ДанныеСтроки

```1c
    // Процедура - обработчик события "ПриВыводеСтроки" табличной части
    // "Товары". Формирует данные в колонке "Всего".
    //
    Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)

    Если мКолонкиТовары.Всего.Видимость Тогда
    ТекСумма = ДанныеСтроки.Сумма + ?(СуммаВключаетНДС, 0, ДанныеСтроки.СуммаНДС);

    ОформлениеСтроки.Ячейки.Всего.УстановитьТекст(ОбщегоНазначения.ФорматСумм(ТекСумма));
    КонецЕсли;

    РаботаСДиалогами.ПоказатьКоэффициентМест(мКолонкиТовары, ОформлениеСтроки.Ячейки, ДанныеСтроки.ЕдиницаИзмеренияМест);
    РаботаСДиалогами.ПоказатьКодАртикул(мКолонкиТовары, ОформлениеСтроки.Ячейки, ДанныеСтроки.Номенклатура);
    РаботаСДиалогами.ПоказатьСуммуБезСкидок(мКолонкиТовары, ОформлениеСтроки.Ячейки, ДанныеСтроки.Цена, ДанныеСтроки.Количество);

    Если ДанныеСтроки.Количество <> ДанныеСтроки.АТП_Количество Тогда
    ОформлениеСтроки.Ячейки.ПоФакту.ЦветТекста = WebЦвета.Красный;
    Иначе
    ОформлениеСтроки.Ячейки.ПоФакту.ЦветТекста = WebЦвета.Зеленый;
    КонецЕсли;

    Если ЗначениеЗаполнено(ДанныеСтроки.СерияНоменклатуры) Тогда
    Если мКолонкиТовары.НомерГТД.Видимость Тогда
    ОформлениеСтроки.Ячейки.НомерГТД.УстановитьТекст(ДанныеСтроки.СерияНоменклатуры.НомерГТД);
    КонецЕсли;
    Если мКолонкиТовары.СтранаПроисхождения.Видимость Тогда
    ОформлениеСтроки.Ячейки.СтранаПроисхождения.УстановитьТекст(ДанныеСтроки.СерияНоменклатуры.СтранаПроисхождения);
    КонецЕсли;
    КонецЕсли;

    КонецПроцедуры
```
---
Оно конечно хорошо, но мне бы проверять условие при изменении поля "ПоФакту"
Не. В ОФ это не так работает. Доступ к оформлению доступен только в событиях ПриВыводеСтроки() и ПриПолученииДанных().
Там все и делай. Эти события платформа автоматически вызывает при отрисовке, а отрисовка автоматически происходит при изменении отображаемых данных.
Так что все нормально будет.
ПриВыводеСтроки() используй только если нет обращений к БД. Обращения к БД делай запросом сразу на всю порцию отрисовываемых данных в ПриПолученииДанных() - это значительно уменьшит тормоза.
---
привыводестроки
 ОформлениеСтроки.ЦветФона = WebЦвета.ЗеленаяЛужайка;
---
```1c
    Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
```

А откуда берутся параметры ОформлениеСтроки и ДанныеСтроки?