Parece que na sua fórmula atual, você inverteu os parâmetros "se verdadeiro" e "se falso".
Eu usaria:
=IF(ISBLANK(E1),"",(D1-E1)/D1)
Isto será exibido em branco quando E1 estiver em branco, o% de desconto se não for. Se você quiser evitar a exibição de erros (se D1 estiver em branco, por exemplo):
=IFERROR(IF(ISBLANK(E1),"",(D1-E1)/D1),"")
Você também pode inserir uma string diferente entre as duas últimas "marcas, se quiser dizer algo como" Erro - verificar as taxas padrão e de desconto ".