Excel 2010 PowerPivot: como mostro itens sem dados?

12

Em tabelas dinâmicas padrão do Excel, há uma opção para campos que permitem forçar a exibição de todos os itens, mesmo que não haja resultados para sua seleção atual. Aqui está a opção:

Noentanto,usandoosuplementodoPowerPivotparaoExcel2010,estaopçãoestáemcinza.Existeumasoluçãoalternativaparaqueeupossaforçartodososresultadosaaparecer?

Cenáriodeexemplo-númerodebananasvendidaspormês.Seeunãovendernenhumabananaemagosto,atabelaPowerpivotnãomostraumacolunaparaagosto,apenaspuladejulhoasetembro.Precisoqueagostoapareça,comumnúmeroembrancodebananasouzero.

Algumaideia?TalvezsejanecessáriaumaexpressãoDAX?

EDIT:pararesponderàperguntadeharrymc,crieiestaTabelaDinâmicaselecionandoTabelaDinâmicanestemenunajaneladoPowerPivot.

    
por Andi Mohr 27.09.2013 / 14:46

4 respostas

5

Na verdade, esta é uma solução melhor. Graças a Alberto Ferrari por este aqui.

Você precisa criar uma tabela Meses (ou seja, uma lista de nomes de mês, Jan / Fev / Mar etc - uma tabela vinculada funcionará muito bem), e criará um relacionamento entre sua nova tabela Meses e seu fato tabela.

Em seguida, escreva uma medida como esta:

NeverBlankUnits:=IF( ISBLANK( SUM(FruitSales[Units]) )
                      , 0
                      , SUM(FruitSales[Units]) 
                   )

EDIT : quando você adiciona sua nova coluna de meses à sua tabela dinâmica, pode achar que a classificação padrão é frustrantemente alfabética; Apr, Aug, Dec, Feb ... Aqui está um ótimo tutorial mostrando como contornar isso.

    
por 07.11.2013 / 12:03
0

Uma solução alternativa pode ser possível usar um Data Analysis Expression (DAX) para substituir espaços em branco por zeros.

O DAX pode forçar um zero em vez de um em branco sempre que não existirem dados na tabela de fatos, mas você quiser que a linha apareça na Tabela Dinâmica.

Para uma planilha simples com Depts, Divisões e uma tabela de fatos chamada Numbers, e com uma única coluna "D" contendo um número para somar, escreva o código DAX desta forma:

=IF (
    COUNTROWS (Divisions) > 0; 
    IF (ISBLANK (SUM (Numbers[D])), 0, SUM (Numbers[D]))
)

Para mais informações, consulte: Como usar o DAX no suplemento PowerPivot do Excel
Expressões de análise de dados (DAX) no PowerPivot

Essa abordagem foi originalmente sugerida no tópico Mostrar itens sem dados em linhas .

    
por 03.10.2013 / 07:51
0

Um método de força bruta seria criar uma medida para cada mês. Contanto que uma das colunas do mês tenha alguns dados, todas as colunas do mês serão exibidas. Criar todas essas medidas individuais é muito entediante - não é o ideal.

=CALCULATE(
   SUM([Units])
   ,Filter('FruitSales',[Month Name]="August")
   )
    
por 07.10.2013 / 10:57
0

isso funciona para mim:

= if (sum (calendário [Data]) > 0; se (isblank (sum (Sales_SalesOrderDetail [LineTotal])); 0; soma (Sales_SalesOrderDetail [LineTotal])))

    
por 24.11.2014 / 16:32