2012-12-06 21:09:17 +0000 2012-12-06 21:09:17 +0000
27
27

Mostrar Célula em Branco ao Referenciar Célula em Branco no Excel 2010

Tenho uma pasta de trabalho Excel 2010 que contém uma série de folhas de trabalho individuais. As células de uma das folhas estão ligadas a células individuais em duas outras folhas de trabalho da mesma pasta de trabalho. Estou a utilizar uma referência directa de célula que diz essencialmente que qualquer que seja o valor introduzido numa determinada célula de uma folha, também preenche células de duas outras folhas. Utilizei a função (=) com a referência de célula para o conseguir.

A questão que me deparo é que, mesmo quando a célula primária é deixada em branco, as células que povoam a partir dessa célula primária exibirão 0, em vez de ficarem elas próprias em branco.

Quero que as células subordinadas permaneçam em branco se a célula primária a que estão ligadas estiver em branco.

Respostas (17)

51
51
51
2015-04-28 04:56:10 +0000

É necessário 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 faz automaticamente com valores em branco.

=A2 & ""

Isto forçará o Excel a fazer referência a essa célula como um valor de texto, impedindo assim a conversão de espaços em branco em zeros.

18
18
18
2012-12-06 21:30:16 +0000

Aqui estão três respostas:

1) Deixar other.cell.reference representar a fórmula de referência que tem actualmente após o = (por exemplo, Sheet17!$H$42), substituir essa referência de ligação por

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

2) Definir o formato “Número” das suas células ligadas para “Personalizado”: General;–General;.

3) Em “Excel Options”, página “Advanced”, secção “Display options for this worksheet”, limpe a caixa de verificação “Show a zero in cells that have a zero value”.  Atenção: isto fará desaparecer todos os zeros da folha de trabalho.

4
4
4
2015-04-28 04:19:06 +0000

SE os seus dados de referência forem apenas de tipo numérico (sem texto) ou vazios, e pode ter 0’s, então esta é a minha abordagem preferida, com a introdução da fórmula apenas uma vez. É certo que de uma forma ligeiramente indirecta, mas é melhor, penso eu, porque:

  • não precisa de células extra para colocar a fórmula e depois referenciar as segundas células
  • não precisa de digitar a fórmula duas vezes
  • este método diferencia entre um valor zero e uma célula vazia
  • não precisa de VBA
  • não precisa de Named Ranges

Downfall : Se necessitar de dados de texto devolvidos, isto não funcionará. Para dados de texto o meu método preferido é usar o formato numérico como mencionado em outras respostas acima.

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

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

Notas sobre como isto funciona:
IFERROR() - segundo argumento é definido para cadeia vazia, por isso se ocorrer um erro, obtemos uma cadeia vazia. Portanto, precisamos de ter a certeza que se a célula de origem estiver vazia, um erro é desencadeado.

Método numérico : Stringify the source value, then multiply by 1. Literal emtpy string * 1 = #VALUE, String with numeric is auto-converted to numeric and no error occurs.

4
4
4
2015-06-08 10:22:15 +0000

Há outro truque: colocar a célula vazia do soucre na fórmula ="". Ver a descrição detalhada aqui. .

2
2
2
2014-07-25 12:35:30 +0000

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

Mas combinada com a abordagem daqui poderia ser quase suportável, penso: http://www.ozgrid.com/Excel/named-formulas.htm

Digamos que tenho uma fórmula como esta

= 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 a partir de uma folha de dados utilizando a selecção condicional e apresenta-os noutra folha. Não tenho qualquer controlo sobre a formação de células na folha de dados.

Vou inserir > Nome > Definir e na “Nomes na folha de trabalho” crio um novo nome “RC_P_B”. Depois no campo “Refere-se a” copio a minha fórmula (sem {} caracteres - é a fórmula da matriz).

Depois pode usar a fórmula de Scott sem ter de repetir todo o texto da fórmula:

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

Creio que isto é melhor do que copiar a fórmula inteira.

2
2
2
2014-11-09 06:28:11 +0000

Simplesmente não uso uma fórmula para ultrapassar este problema. Tudo o que eu faço é formatar condicionalmente as células para a cor branca, se o valor da célula for igual a 0.

1
1
1
2015-06-11 03:35:03 +0000

Há muito que procuro uma solução elegante para esta questão.

Tenho usado a fórmula =if(a2=“”,“”,a2) durante anos, mas acho-a um pouco incómoda.

Tentei a sugestão acima =a2&“”, e embora pareça funcionar, mostra um número que na realidade é texto, pelo que a formatação de números não pode ser aplicada e nenhuma operação estatística funciona, tal como soma, média, mediana, etc., por isso, se são números viáveis, não se encaixa na factura.

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

=CELL(“contents”,A2)

devolve 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 alguma razão, esta solução não parece aparecer em nenhuma das sugestões online que encontrei, mas

1
1
1
2017-06-22 12:20:12 +0000

Solução para Excel 2010:

  1. abrir “Ficheiro”
  2. Pressionar “Opções”
  3. Clicar em “Avançado”
  4. Em “Opções de Visualização” para esta folha de trabalho “BBBB”
  5. Desmarcar a caixa “Mostrar um valor zero para as células que têm um valor zero”.
1
1
1
2012-12-06 21:30:05 +0000

Se a célula ligada for não-numérica pode usar uma declaração IF com ISTEXT:

=IF(ISTEXT(Sheet1!A2), Sheet1!A2, "")
0
0
0
2018-04-22 16:42:25 +0000

Utilizei formatação condicional para formatar a fonte para ser da mesma cor do fundo da célula onde o valor da célula era igual a zero.

0
0
0
2016-01-08 17:33:14 +0000
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
-1
-1
-1
2015-03-17 20:24:48 +0000

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 isto ajude

-1
-1
-1
2016-08-13 21:40:08 +0000

Todas estas soluções são demasiado complicadas para mim e apercebo-me que isto pode não ser viável para todas as aplicações, mas simplesmente preencho o campo de origem com um branco e recebo um branco no campo de destino.

-1
-1
-1
2015-07-15 15:20:22 +0000

Tive um problema semelhante, e penso ter encontrado um método para si. Resolveu os meus problemas.

Se quiser que a coluna C se refira à coluna A, e apenas escreva uma fórmula para a célula de referência, utilizaria esta e arrastaria a coluna para baixo.

=A1

Contudo, pode haver células de referência na coluna A que estão em branco e precisam de permanecer em branco nas células de referência na coluna C, pode utilizá-la e arrastar a coluna para baixo.

=T(A1)

Quanto à formatação das células, a referência (columnn C) terá de ser geral.

-1
-1
-1
2018-01-29 12:01:59 +0000

Tenho uma solução que funciona para mim:

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

Explicação:

"" é igual a uma célula em branco ou vazia. Agora só dou a volta ao se. Se a célula estiver em branco, faça-o em branco, caso contrário, use a referência da célula.

-1
-1
-1
2015-11-30 05:58:52 +0000

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

Explicação: Para resolver este problema utilizei dois conjuntos de comandos If.

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

Parte dois de comando: Eu disse-lhe como se comportar se não houvesse dados; “” significa deixar em branco

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

-2
-2
-2
2015-09-25 19:33:35 +0000

Ir para Células de Formato.

Depois seleccionar o formato personalizado, e introduzir o seguinte:0;-0;;@