Замена и замена, кажется, работают, только если он смотрит на другие ячейки (если это имеет смысл).
Правильно. В зависимости от семантики (то есть от того, как вы на это смотрите), формулы (и функции) ничего не меняют . Они вычисляют значение для ячейки, в которой они находятся.
Это может зависеть от значения (й) в некоторых других ячейках (например, A3:A16), но ячейка не может иметь значение и формулу для манипулирования этим значением.
Что вы можете сделать, это установить B3 в
=IF(AND(LEN(A3)=1, NOT(EXACT(UPPER(A3),LOWER(A3)))), 0, A3)
а затем перетащите / заполните его до B16 .
Объяснение:
- Проверьте длину (
LEN) значения, которое мы смотрим (ячейка A3).
Если это один (1), продолжите этот тест, в противном случае, «провал» (подробнее об этом позже).
- Преобразуйте значение в
A3 в верхний и нижний регистр. Если A3 содержит не алфавитный символ, такой как 7 , & или ♥ , преобразование регистра не будет иметь никакого эффекта.
Если это заглавная буква (например, Q), LOWER(A3) вернет свой строчный эквивалент (q), и наоборот.
Поэтому, возможно, если UPPER(A3) ≠ LOWER(A3) , A3 содержит букву.
- К сожалению, для нас в этом случае Excel обычно не учитывает регистр; если вы сравните
Q с q , Excel скажет, что они равны.
Поэтому мы используем функцию EXACT() чтобы увидеть, идентичны ли они точно.
- Объединяя вышесказанное, если
A3 - это один символ, а этот символ - буква, это то, что (я считаю) вы ищете. Итак, мы оцениваем B3 до следующего аргумента, а именно 0 . Если он пустой или содержит более одного символа или не является буквой (т. Е. Тест не пройден), мы отображаем его значение (т. Е. Значение A3).
Выше есть сбой: если A3 пусто, длина равна нулю, и мы получаем последнюю часть формулы - часть A3 - но она будет отображаться как 0 . Чтобы исправить это, сделайте
=IF(ISBLANK(A3), "", IF(AND(LEN(A3)=1, NOT(EXACT(UPPER(A3),LOWER(A3)))), 0, A3))
в котором говорится, что если A3 пусто, установите B3 пустым; в противном случае перейдите к формуле, как описано выше.
Если вы хотите изменить значения в A3:A16 навсегда, просто скопируйте B3:B16 и вставьте значения в A3:A16 .