Exemplo de Uso

<< Clique para Mostrar o Sumário >>

 

Exemplo de Uso

1.Adicione um botão em uma planilha chamada VBScript, colocando nesta aba os parâmetros a serem utilizados na consulta ao EPM, conforme a figura a seguir.

Criação do botão

Criação do botão

A adição de um botão na planilha pode ser realizada através do menu de desenvolvimento do Excel, com o modo Design habilitado.

 

2.A segunda etapa é escrever um procedimento que lê os parâmetros da planilha e executa uma consulta ao EPM Server ao clicar em um botão. O procedimento é o seguinte:

Sub GetEpmTagValues()
  Dim EpmServer, BVName
  Sheets("VBScript").Select
  EpmServer = Range("B2")
  BVName = Range("B7")
  MsgBox "Function EpmAggregate" & vbNewLine _
    & "Server: " & EpmServer & vbNewLine _
    & "BV-Name: " & BVName
  Range("A10:C16").Select
  Selection.ClearContents
  Selection.FormulaArray = "=EpmAggregate(VBScript!B2,_
    VBScript!B4, VBScript!B5, VBScript!B3,_
    VBScript!B6, , VBScript!B7)"
End Sub

 

Este procedimento seleciona a planilha VBScript, lendo os valores das células B2 e B7 e associando às variáveis EpmServer e BVName, que são apresentadas em uma janela de mensagem antes de efetivamente executar a consulta. Na sequência, é selecionada uma área, células A10:C16, onde é colocada a função no formato Multi-Array Formula com a consulta.

 

3.Após associar o comando de pressionamento do botão com o procedimento GetEpmTagValues, desabilite o modo Design e clique no botão para mostrar a janela com a mensagem informando o servidor e a variável a ser consultada, conforme a figura a seguir.

Janela de mensagem

Janela de mensagem

4.Ao clicar em OK nesta janela de mensagem, o código que copia a função no formato Multi-Array Formula para as células selecionadas é executado, apresentando os resultados segundo o Layout definido como padrão.

Resultado do procedimento

Resultado do procedimento

Note que a fórmula foi definida como sendo do tipo Multi-Array Formula, uma vez que é apresentada entre chaves. É importante ressaltar que as fórmulas a serem colocadas nas células através de procedimentos escritos em VBA devem estar neste formato, ou seja, utilizando o método de atribuição de conteúdo à célula FormulaArray.

Uma outra forma de utilizar as funções do EPM em procedimentos escritos em VBA é através do carregamento dos objetos de consulta do EPM. Desta forma, é possível processar os dados no próprio script e posteriormente dispor os resultados na planilha no formato desejado. O exemplo a seguir demonstra esta outra forma.

1.Adicione um botão em uma planilha, conforme a figura a seguir.

Adicionar botão na planilha

Adicionar botão na planilha

2.Escreva um procedimento que executa uma consulta ao EPM Server ao clicar em um botão. O procedimento é o seguinte:

Sub Execute_Dataset01()
  Dim o As Object
  Static queryResultAsObject As Variant
  Dim callerRows As Integer
  Dim callerColumns As Integer
  Set o = CreateObject("AutomationAddIn.EpmFunctions")
  With o
    queryResultAsObject = .EpmQuery("", "Dataset01")
  End With
  callerRows = UBound(queryResultAsObject, 1)
  callerColumns = UBound(queryResultAsObject, 2)
  Dim startRange As Range
  Set startRange = Range("A4")
  Dim endRow As Integer
  endRow = startRange.Row + callerRows
  Dim endColumn As Integer
  endColumn = startRange.Column + callerColumns
  Dim endRange As Range
  Set endRange = Cells(endRow, endColumn)
  Dim targetRange As Range
  Set targetRange = Range(startRange, endRange)
  With targetRange
    .Value = queryResultAsObject
  End With
End Sub

 

Este procedimento cria um objeto de consulta, AutomationAddIn.EpmFunctions, e executa o método EpmQuery deste objeto, deixando vazio o campo da conexão, ou seja, utiliza a conexão padrão, e informando o nome de um Dataset previamente criado no EPM Studio, Dataset01. Uma vez executado este método, os resultados são dispostos na planilha a partir da célula A4, definida como ponto inicial no procedimento.

3.Após associado o comando de pressionamento do botão com o procedimento Execute_Dataset01, desabilite o modo Design e clique no botão para realizar a consulta e apresentar os resultados, conforme a figura a seguir.

Resultado do procedimento

Resultado do procedimento

Esta outra forma de execução de funções do EPM em scripts VBA do Excel dá total autonomia e flexibilidade para o processamento dos dados via script, assim como a apresentação dos resultados na planilha.

Esta página foi útil?