Replace and substitute seem to work only if it is looking at other cells (if that makes sense).
Dependendo da semântica (ou seja, como você olha para ela), fórmulas (e funções)
não altere nada. Eles calculam um valor para a célula em que estão.
Isso pode depender do (s) valor (es) em outra (s) célula (s) (por exemplo, A3:A16
),
mas uma célula não pode ter um valor e uma fórmula para manipular esse valor.
O que você pode querer fazer é definir B3
para
=IF(AND(LEN(A3)=1, NOT(EXACT(UPPER(A3),LOWER(A3)))), 0, A3)
e depois arraste / preencha isso para B16
.
Explicação:
- Verifique o comprimento (
LEN
) do valor que estamos visualizando (cellA3
). Se for um (1), prossiga com este teste, caso contrário, "falhará" (mais sobre isso depois) . - Converta o valor em
A3
para maiúsculas e minúsculas. SeA3
contiver algum caractere não alfabético, como7
,&
ou♥
, caso a conversão não terá efeito. Se for uma letra maiúscula (por exemplo,Q
),LOWER(A3)
retornará seu equivalente em minúsculas (q
) e vice-versa. Portanto, indiscutivelmente, seUPPER(A3)
≠LOWER(A3)
,A3
contiver uma letra. - Infelizmente para nós neste caso, o Excel geralmente não faz distinção entre maiúsculas e minúsculas; Se você comparar
Q
aq
, o Excel dirá que eles são iguais. Então, usamos a funçãoEXACT()
para ver se eles são exatamente idênticos. - Combinando o acima, se
A3
for um caractere e esse caractere for uma letra, é o que (eu acredito) você está procurando. Então, avaliamosB3
para o próximo argumento, ou seja,0
. Se estiver em branco ou mais de um caractere ou não uma letra (ou seja, o teste falhou), exibiremos seu valor (ou seja, o valor deA3
).
Há uma falha no código acima: se A3
estiver em branco, o comprimento será zero e obteremos a última parte da fórmula –– o A3
part––, mas será exibido como 0
. Para corrigir isso, faça
=IF(ISBLANK(A3), "", IF(AND(LEN(A3)=1, NOT(EXACT(UPPER(A3),LOWER(A3)))), 0, A3))
que diz, se A3
estiver em branco, defina B3
como em branco; caso contrário, prossiga com a fórmula descrita acima.
Se você quiser alterar os valores em A3:A16
permanentemente, basta copiar B3:B16
e colar valores em A3:A16
.