Sua fórmula funciona bem para mim no OpenOffice. Onde usando uma vírgula no Excel, no OpenOffice um precisa usar um ponto-e-vírgula na fórmula (caso contrário, um obtém Err508
como resultado e Error: in bracketing
na barra de status), então usei:
=IF(E2; -1; 1) * D2
Então:certifique-sedequeoE2estejaformatadocomobooleano(como:sedigitar"verdadeiro" converterá automaticamente o valor para maiúscula "VERDADEIRO" e o valor será alinhado à direita por padrão).
Como um aparte: o seguinte pode ser um pouco mais fácil de ler, mas isso é apenas uma questão de gosto:
=IF(E2; -D2; D2)