Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Importação dados Planilha excel

Pessoal, preciso de um help, é possível importar no qlik sense planilhas em excel onde as informações de data estão em colunas?

Ex.: Atividade x | Cidade | Produto | Valor | Mês 1 | Mês 2 | Mês 3 ...

Porém tenho estas informações separadas em planilhas por ano

1 Solution

Accepted Solutions
pablolabbe
Luminary Alumni
Luminary Alumni

Sim é possivel, utilize o recurso de transposição de colunas do gerenciador de dados , ou o comando LOAD com prefixo Crosstable caso utilize diretamente o editor de script.

View solution in original post

4 Replies
pablolabbe
Luminary Alumni
Luminary Alumni

Sim é possivel, utilize o recurso de transposição de colunas do gerenciador de dados , ou o comando LOAD com prefixo Crosstable caso utilize diretamente o editor de script.

nicolett_yuri

Conforme o Pablo orientou, o recurso de Crosstable resolve o seu problema, mais detalhes aqui: Crosstable ‒ Qlik Sense

rafaugusto
Contributor III
Contributor III

Correto Pablo, presumo ainda que os anos venham identificado na planilha, dai pode usar filename() para conseguir concatenar a data nas colunas de meses

Not applicable
Author

Obrigado Pablo pela dica. Porém tive que identificar com o nº da ultima coluna para que o sistema realizasse a transposição a partir da próxima, dar o nome das colunas Valor e mês, conforme o exemplo abaixo:

Ex.: Atividade x | Cidade | Produto | 31/01/17 | 28/02/17 | 31/03/17 | Valor

Tive que inserir o seguinte comando antes do load, CROSSTABLE ([MÊS],[Valor],2)


Agora travei na formatação das colunas mês, pois no excel tive que identificar como um campo texto, caso eu deixasse como campo data, ao importar o Qlik transformava em campo numérico de 31/01/17 ficava como 42766. Com isso tentei varias formas de tornar a informação em campo data, inclusive acrescentei o script de autocalendar para ver se me ajudava, mas não tive sucesso. Tem alguma dica????


[autoCalendar]:

  DECLARE FIELD DEFINITION Tagged ('$date')

FIELDS

  Dual(Year($1), YearStart($1)) AS [Year] Tagged ('$axis', '$year'),

  Dual('Q'&Num(Ceil(Num(Month($1))/3)),Num(Ceil(NUM(Month($1))/3),00)) AS [Quarter] Tagged ('$quarter', '$cyclic'),

  Dual(Year($1)&'-Q'&Num(Ceil(Num(Month($1))/3)),QuarterStart($1)) AS [YearQuarter] Tagged ('$yearquarter', '$qualified'),

  Dual('Q'&Num(Ceil(Num(Month($1))/3)),QuarterStart($1)) AS [_YearQuarter] Tagged ('$yearquarter', '$hidden', '$simplified'),

  Month($1) AS [Month] Tagged ('$month', '$cyclic'),

  Dual(Year($1)&'-'&Month($1), monthstart($1)) AS [YearMonth] Tagged ('$axis', '$yearmonth', '$qualified'),

  Dual(Month($1), monthstart($1)) AS [_YearMonth] Tagged ('$axis', '$yearmonth', '$simplified', '$hidden'),

  Dual('W'&Num(Week($1),00), Num(Week($1),00)) AS [Week] Tagged ('$weeknumber', '$cyclic'),

  Date(Floor($1)) AS [Date] Tagged ('$axis', '$date', '$qualified'),

  Date(Floor($1), 'D') AS [_Date] Tagged ('$axis', '$date', '$hidden', '$simplified'),

  If (DayNumberOfYear($1) <= DayNumberOfYear(Today()), 1, 0) AS [InYTD] ,

  Year(Today())-Year($1) AS [YearsAgo] ,

  If (DayNumberOfQuarter($1) <= DayNumberOfQuarter(Today()),1,0) AS [InQTD] ,

  4*Year(Today())+Ceil(Month(Today())/3)-4*Year($1)-Ceil(Month($1)/3) AS [QuartersAgo] ,

  Ceil(Month(Today())/3)-Ceil(Month($1)/3) AS [QuarterRelNo] ,

  If(Day($1)<=Day(Today()),1,0) AS [InMTD] ,

  12*Year(Today())+Month(Today())-12*Year($1)-Month($1) AS [MonthsAgo] ,

  Month(Today())-Month($1) AS [MonthRelNo] ,

  If(WeekDay($1)<=WeekDay(Today()),1,0) AS [InWTD] ,

  (WeekStart(Today())-WeekStart($1))/7 AS [WeeksAgo] ,

  Week(Today())-Week($1) AS [WeekRelNo] ;

DERIVE FIELDS FROM FIELDS [MÊS] USING [autoCalendar] ;