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

Macro

Queridos ,

queridos tenho esta macro..

SUB GetSelectedValues

     SET Mes = ActiveDocument.Fields("Calendario.MES")

     SET variavel = ActiveDocument.Variables("MesAtivo")

     SET fxV = Mes.GetSelectedValues 

             if fxV.Count=1 then                  

                      variavel.SetContent fxV(i).Text, True  

              end if 

END SUB

Pega o campo do mes selecionado e coloca numa variavel .

Contudo esse campo Mes , eles está em String .,

o Mes 01  está como Jan

o Mes 02  está como Fev.... Normal

queria poder tranformar para numero .

Como eu faria?

2 Replies
EduardoAlexandredeFrancisco

Cara, pelo que entendi... não precisa usar uma macro para fazer isso

Se for me configuração >> Visão Geral das Variaveis

Seleciona a variavel que irá receber o Mes, no item Definição, você digita:

=num(month(MAX([Data Base] )))

De forma automatica, sempre pegará a ultima data selecionada e retorna o mes numerico.

  • MAX([Data Base] ) --> retorna o último período selecionado, Esse [Data Base] é o campo no formato DD/MM/YYYY
  • Month() --> Transforma em Mês o período selecionado
  • Num --> transforme o nome do mês em número do mês
nicolett_yuri

Não precisa de macro para fazer isso. Basta transformar seu campo string em data com a função date#


Segue um exemplo

Calendario:

LOAD

  Date#(Calendario.MES, 'MMM') as Calendario.MES;

LOAD * INLINE [

Calendario.MES

Jan

Fev

Mar

Abr

Mai

Jun

Jul

Ago

Set

Out

Nov

Dez

];