Логическая функция с цветом ячейки

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
Lame
Сообщения: 24
Зарегистрирован: 25 дек 2007, 10:46

Можно ли сделать такую функцию (без использования VBA), которая бы распозовала цвет знаяения в ячейке и если цвет удовлетоврял условию поиска - функция возвращала бы занение ячейки, а если нет (т.е. цвет бы был иной нежели тот который мы ищем) то возвращалось бы пустое значение...

АНдеюсь не слишком сложно написал)). К примеру есть диапазон из 20 на 20 ячееек. Мы проверяем каждую ячейку и значение в очередной проверяемой ячейке окрашено допустим красным, функция возвращает знаение в ячейке а если нет то соответственно возвращает нулевое значение (или "").
Pavel55
Сообщения: 418
Зарегистрирован: 20 окт 2006, 11:40
Откуда: Moscow

наверное без VBA не получится
Lame
Сообщения: 24
Зарегистрирован: 25 дек 2007, 10:46

Печально.

Спасибо
Dim_ok
Сообщения: 51
Зарегистрирован: 03 июл 2007, 09:17

А может быть можно зайти с обратной стороны? раз ячейка окрашена каким либо цветом, то наверное чем то значение в ней примечательно? Тогда можно было бы проверяя "условие" окрашивания всех ячеек диапазона получить и значение.
Lame
Сообщения: 24
Зарегистрирован: 25 дек 2007, 10:46

)) Логика ясна. Но в данный момент этот подход не сработает и логики окрагенных цифр в экселе прослежить нельзя (т.к. окрашенные цифры изначально взяты из отчета 1С).
tolikt
Сообщения: 93
Зарегистрирован: 29 окт 2005, 12:33
Откуда: NewVasюbirsk

Excel97. Если без VBA, то попробуй это.
Есть ПОЛУЧИТЬ.ЯЧЕЙКУ - функция языка XLM (какая-то полуфункция/недомакрос).
Если сможешь как-то её грамотно применить, то возможно она и поможет. Там где-то как-то надо указать в аргументах этой функции значение 63 (цвет ячейки).
Типа для цвета ячейки А1 будет выглядить примерно так: ПОЛУЧИТЬ.ЯЧЕЙКУ(63;$A$1). Но надо это записать под каким-нибудь именем в Именованные функции (Вставка->Имя->Присвоить).
Возможно, поможет топик Полулевые функции типа ПОЛУЧИТЬ.ЯЧЕЙКУ - работают не всегда?
Если получится, напиши очень подробно, как сделал. И мне надо.
Ответить