Страницы: 1
RSS
Вывести в ячейке текст при условном форматировании
 
Здравствуйте. Обращаюсь к опытным пользователям excel. Необходимо в столбце примечания вывести текст "выполнено 100%", если значение в какой-либо (или каких-либо) ячейке столбца "факт" сравняется или станет больше значения (й) в соответствующих ячейках "объем по контракту". Возможно ли это сделать с помощью условного форматирования? Это элементарно делается с помощью функции ЕСЛИ. Но мне этот вариант не подходит, потому-что ячейки из столбца примечания необходимо использовать для обычных текстовых примечаний и, только когда выполнится условие описанное выше, автоматически в примечаниях должен появиться текст "выполнено 100%". Спасибо.
Изменено: akrab - 19.06.2015 11:24:10
 
Не могу открыть файл.
 
Цитата
Юрий М написал: Не могу открыть файл.
Я тоже.
 
akrab, попробуйте сами - с сайта открывается?
 
Вариант
 
Спасибо всем, кто откликнулся. Заливал файлик с рабочей машины. Видимо настройки корп. безопасности не позволяют. Вечером из дома перезалью.
 
Файлик с примером перезалил, сейчас открывается. Прошу прощения за созданные неудобства.
 
gling Ваш вариант посмотрел, спасибо. Это не то, что нужно. Смысл в том, чтобы ячейки в столбце "примечания" можно было использовать в двойном назначении.

1.Пока значение в ячейке столбца "факт" меньше значения в соответствующей ячейке столбца "объем по контракту" в ячейку столбца "примечания" вносятся "руками" примечания в виде слов в текстовом формате
2. Как только значение в какой-либо (или каких-либо) ячейке столбца "факт" сравняется или станет больше значения (й) в соответствующих ячейках "объем по контракту", автоматически в соответствующую ячейку в столбце "примечания" excel вставлял значение "выполнено 100%". Спасибо.
 
Такое, ИМХО, только макросом. Например, таким.
Код
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C4:C18")) Is Nothing Then
If Range("B" & Target.Row) <= Range("C" & Target.Row) Then Range("D" & Target.Row) = "выполнено 100%"
End If
End Sub
Если после записи "выполнено 100%" Примечание не нужно менять, то можно лист защитить.
 
Уважаемый, Алишер Шакиров. Благодарю за короткое изящное решение моего вопроса. У меня, благодаря Вам все получилось. Спасибо всем за участие.
 
УФ выполнено 100 проц.xls (30.5 КБ) Еще раз, здравствуйте. В продолжение темы. Как будет выглядеть макрос Алишера Шакирова, если данные в ячейки столбца C из прилагаемого примера не только  "вносить руками", но и "подтягивать" из соответствующих ячеек столбца Е?
 
ну вот так можно...
Код
Private Sub Worksheet_Calculate()
  Application.EnableEvents = False
  For Each c In Range("C4:C18")
    If c.Offset(, -1).Value <= c.Value Then c.Offset(, 1) = "выполнено 100%"
  Next
  Application.EnableEvents = True
End Sub
это для листа Лист1
но для более-менее больших объемов данных - я бы не советовал делать подобное.
ибо нагрузка приличная создается.

имхо, проще и правильнее создать вторую колонку для примечаний.
в первую - вводить руками, вторая - только с формулами.
пример - на листе Лист2
Изменено: ikki - 22.06.2015 18:18:13 (кракозябры)
фрилансер Excel, VBA - контакты в профиле
"Совершенствоваться не обязательно. Выживание — дело добровольное." Э.Деминг
 
ikki, спасибо огромное за макрос и совет.
 
Добрый день, уважаемые знатоки. Подскажите, пожалуйста каким образом в макросе ikki от 22 Июн 2015 18:15:55 исключить  заполнение "выполнено 100%" пустых строк или строк с текстом, например строки12,15,16 и т.д. из прилагаемого файла?
 
Измените 4-ю строку кода на
Код
If c(1, 0) <= c And IsNumeric(c.Text) And IsNumeric(c(1, 0).Text) Then c(1, 2) = "выполнено 100%" 
 
Спасибо, Влад. Отлично. Работает. :)
Страницы: 1
Читают тему
Наверх