Exibir em branco ao referenciar célula em branco no Excel 2010

19

Eu tenho uma pasta de trabalho do Excel 2010 que contém várias planilhas individuais. As células de uma das planilhas são vinculadas a células individuais em duas outras planilhas na mesma pasta de trabalho. Eu estou usando uma referência de célula direta que essencialmente diz que qualquer valor é inserido em uma célula específica em uma planilha também preenche as células em outras duas planilhas. Eu usei a função (=) com a referência da célula para fazer isso.

O problema que estou enfrentando é que, mesmo quando a célula primária é deixada em branco, as células que são preenchidas dessa célula primária exibirão 0, em vez de permanecerem em branco.

Eu quero que as células subordinadas permaneçam em branco se a célula principal à qual elas estão vinculadas estiver em branco.

    
por Dave 06.12.2012 / 22:09

17 respostas

39

Você precisa forçar o Excel a tratar o conteúdo da célula como um valor de texto em vez de um número, o que é feito automaticamente com valores em branco.

=A2 & ""

Isso forçará o Excel a transformar essa célula em um valor de texto, evitando assim a conversão de espaços em branco em zeros.

    
por 28.04.2015 / 06:56
17

Aqui estão três respostas:

1) Deixar other.cell.reference representar a fórmula de referência que você tem atualmente após o = (por exemplo, Sheet17!$H$42 ), substitua essa referência de link por

=IF(other.cell.reference<>"",other.cell.reference, "")

2) Defina o formato “Número” de suas células vinculadas para “Personalizado”: General;–General; .

3) Na seção "Opções do Excel", "Avançado", "Exibir opções para esta planilha", desmarque a caixa de seleção "Mostrar um zero nas células que possuem um valor zero". Aviso: isso fará com que todos os zeros na planilha desapareçam.

    
por 06.12.2012 / 22:30
4

SE seus dados de referência forem apenas um tipo numérico (sem texto) ou vazios, e você pode ter 0s, essa é a minha abordagem preferida, inserindo apenas uma fórmula. Evidentemente, uma maneira ligeiramente indireta, mas é melhor eu acho que porque:

  • você não precisa de células extras para colocar a fórmula e depois referenciar as segundas células
  • você não precisa digitar a fórmula duas vezes
  • este método diferencia entre um valor zero e uma célula vazia
  • não requer VBA
  • não requer intervalos de nome

Queda : Se você precisar de dados de texto retornados, isso não funcionará. Para dados de texto, meu método preferido é o uso do formato numérico, conforme mencionado em outras respostas acima.

=IFERROR((A1 & "") * 1,"")

A1 neste exemplo pode ser substituído por qualquer célula, incluindo outra planilha, pasta de trabalho ou INDIRECT ().

Notas sobre como isso funciona:
IFERROR () - segundo argumento é definido como string vazia, portanto, se ocorrer um erro, obteremos uma string vazia. Portanto, precisamos ter certeza de que, se a célula de origem estiver vazia, um erro será acionado.

Método numérico : Stringify o valor de origem e, em seguida, multiplique por 1. Literal emtpy string * 1 = #VALUE, String com numeric é convertido automaticamente para numérico e nenhum erro ocorre.

    
por 28.04.2015 / 06:19
2

Eu também não encontrei uma solução melhor do que a do Scott.

Mas combinado com a abordagem a partir daqui, pode ser bastante suportável, eu acho:

link

Digamos que eu tenha uma fórmula como essa

= IFERROR( INDEX(INDIRECT("EsZkouska");
  SMALL(IF((INDEX(INDIRECT("EsZkouska");;1‌​;1)="ČSN721180")*(INDEX(INDIRECT("EsZkouska");;9;1)="RC_P_B");
  ROW(INDIRECT"EsZkouska"))-MIN(ROW(INDIRECT("EsZkouska")))+1;"");1);17;1);"")

Esta fórmula lê o valor da célula de uma folha de dados usando a seleção condicional e apresenta-a em outra folha. Eu não tenho controle sobre a formatação de células na folha de dados.

Eu vou para Inserir > Nome > Definir e no "nomes na pasta de trabalho" eu criar novo nome "RC_P_B". Em seguida, no campo "Refere-se a", copio minha fórmula (sem {} caracteres - é uma fórmula de matriz).

Então você pode usar a fórmula de Scott sem ter que repetir todo o texto da fórmula:

 {=IF(RC_P_B<>""; RC_P_B;"---")}

Eu acredito que é melhor do que copiar toda a fórmula.

    
por 25.07.2014 / 14:35
2

Eu simplesmente não uso uma fórmula para superar esse problema. Tudo o que faço é formatar condicionalmente as células para branco se o valor da célula for igual a 0.

    
por 09.11.2014 / 07:28
2

Existe outro truque: configurar a célula vazia do soucre para a fórmula ="" . Veja a descrição detalhada aqui

    
por 08.06.2015 / 12:22
1

Se a célula vinculada não for numérica, você poderá usar uma instrução IF com ISTEXT:

=IF(ISTEXT(Sheet1!A2), Sheet1!A2, "")
    
por 06.12.2012 / 22:30
1

Há muito tempo pesquisei uma solução elegante para esse problema.

Eu usei formula = if (a2="", "", a2) por anos, mas acho que é um pouco pesado.

Tentei acima de sugestão = a2 & "" e embora pareça funcionar, ele mostra um número que é realmente texto, então a formatação numérica não pode ser aplicada e nenhuma operação estatística funciona, como soma, média, mediana etc. por isso, se é um número viável, você está procurando por isso não se encaixa na conta.

Eu experimentei algumas das outras funções e encontrei o que eu acho ser a solução mais elegante até hoje. Continuando o exemplo acima:

= CELL ("conteúdos", A2)

retorna um valor numérico que pode ser formatado como um número e retorna um espaço em branco quando a célula referenciada está em branco. Por algum motivo, esta solução não parece aparecer em nenhuma das sugestões on-line que encontrei, mas

    
por 11.06.2015 / 05:35
1

Solução para o Excel 2010:

  1. Abra "Arquivo"
  2. Pressione "Opções"
  3. Clique em "Avançado"
  4. Em "Opções de exibição" para esta planilha "BBBB"
  5. Desmarque a caixa "Mostrar um valor zero para células com valor zero".
por 22.06.2017 / 14:20
0
Public Function FuncDisplayStringNoValue(MyCell As Variant) As String

Dim Result As Variant

If IsEmpty(MyCell) Then

   FuncDisplayStringNoValue = "No Value"

Else
   Result = CDec(MyCell)

   Result = Round(Result, 2)

   FuncDisplayStringNoValue = "" & Result

   End If

End Function
    
por 08.01.2016 / 18:33
0

Eu usei a formatação condicional para formatar a fonte para a mesma cor do plano de fundo da célula em que o valor da célula era igual a zero.

    
por 22.04.2018 / 18:42
-1

O que funcionou para mim no Office 2013 foi:

=IF(A2=""," ",A2)

Onde no primeiro conjunto de citações não há espaço, e no segundo conjunto há um espaço.

Espero que isso ajude

    
por 17.03.2015 / 21:24
-1

Eu tive um problema semelhante e acho que encontrei um método para você. Corrigiu meus problemas.

Se você quiser que a coluna C faça referência à coluna A e escreva apenas uma fórmula para a célula de referência, use-a e arraste a coluna para baixo.

=A1

No entanto, pode haver células de origem na coluna A que estejam em branco e precisem permanecer em branco nas células de referência na coluna C, você pode usar isso e arrastar a coluna para baixo.

=T(A1)

No que diz respeito à formatação de células, a referência (columnn C) precisará ser geral.

    
por 15.07.2015 / 17:20
-1

Solução: =IF('Wk1 Data-replace w dt bgn & end'!C2>0, 'Wk1 Data-replace w dt bgn & end'!C2, "")

Explicação:
Para resolver esse problema, usei dois conjuntos de comandos If .

Parte um do comando:
Eu disse à célula para exibir o conteúdo da célula de referência se a célula de referência continha dados (o Excel interpreta isso como a célula que tem um valor maior que 0)

Parte dois do comando:
Eu disse como se comportar se não houvesse dados; "" significa deixar em branco

Nota: Wk1 Data-replace w dt bgn & end '! C2 é minha célula de referência.

    
por 30.11.2015 / 06:58
-1

Todas essas soluções são complicadas demais para mim, e percebo que isso pode não ser viável para todos os aplicativos, mas preencho o campo de origem com um espaço em branco e recebo um espaço em branco no campo de destino.

    
por 13.08.2016 / 23:40
-1

Eu tenho uma solução funcionando para mim:

IF(cell reference="","",cell reference)

Explicação:

"" é igual a célula em branco ou vazia. Agora eu só giro o se ao redor. Se a célula estiver em branco, deixe-a em branco, caso contrário, use a referência da célula.

    
por 29.01.2018 / 13:01
-2

Vá para Formatar Células.

Em seguida, selecione o formato personalizado e digite o seguinte: 0;-0;;@

    
por 25.09.2015 / 21:33