Eu estava pensando que deveria haver uma resposta simples para isso, então eu tentei eu mesmo e sim, = A1 = 0 retorna como 0 quando em branco!
Não sei porquê, mas descobri que trocar as declarações na sua primeira instrução AND funcionou
=AND($B$2=0,$B$2<>"")
UPDATE
Seguindo nossos comentários: Você está fazendo referência a um intervalo inteiro em sua fórmula, mas a formatação condicional verifica cada célula do intervalo selecionado em relação à sua fórmula. Em vez disso, selecione o intervalo inteiro com o qual você deseja executar a formatação e, em seguida, para a fórmula, defina a célula superior esquerda como base para sua fórmula sem referência ao bloqueio: =AND(A1=0,A1<>"")
Isso será executado em cada célula do intervalo, verificando se essa célula corresponde às condições definidas.