Como usar o componente Tabela dinâmica Office Web Components com VB

Traduções deste artigo Traduções deste artigo
ID do artigo: 235542 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo demonstra como usar a tabela dinâmica do Office Web Components para exibir informações em um formulário do Visual Basic.

Mais Informações

O Office Web Components são um conjunto de controles que permitem a navegação de dados do Office. Como o Web Components são controles, você pode colocá-los em um formulário do Visual Basic e automatizar os componentes para exibir dados.

Criar o exemplo de automação

  1. Inicie o Visual Basic e crie um novo projeto EXE padrão. O Form1 é criado por padrão.
  2. Em Project|References , adicionar uma referência para a Microsoft ActiveX Data Objects 2.1 Library e, em seguida, clique em OK .
  3. Pressione as teclas CTRL+H para exibir a caixa de diálogo Adicionar componentes . Adicionar o Microsoft Office Web Components e, em seguida, clique em OK .

    Observação : Office XP inclui o Office 2000 e Office XP Web Components. Para usar o Office 2003 Web Components, adicione o Microsoft Office Web Components 11.0 biblioteca. Para usar o Office 2000 Web Components, adicione a biblioteca de Microsoft Office Web Components 9.0. Para usar o Office XP Web Components, adicione a biblioteca Microsoft Office Web Components 10.0.
  4. Adicione uma tabela dinâmica ao formulário.
  5. Na janela de código para Form1, insira o seguinte código:
    Option Explicit
    
    Dim cnnConnection As Object
    
    Private Sub Form_Load()
    
       Dim strProvider As String
       Dim view As PivotView
       Dim fsets As PivotFieldSets
       Dim c As Object
       Dim newtotal As PivotTotal
       
       strProvider = "Microsoft.Jet.OLEDB.4.0"
       ' Create an ADO object
       Set cnnConnection = CreateObject("ADODB.Connection")
       ' Set the provider and open the connection to the database
       cnnConnection.Provider = strProvider
       cnnConnection.Open "C:\pivottest.mdb"
       ' Set the pivot table's connection string to the cnnConnection's connection string
       PivotTable1.ConnectionString = cnnConnection.ConnectionString
       ' SQL statement to get everything from table1
       PivotTable1.CommandText = "Select * from table1"
       
       ' Get variables from the pivot table
       Set view = PivotTable1.ActiveView
       Set fsets = PivotTable1.ActiveView.FieldSets
       Set c = PivotTable1.Constants
       
       ' Add Category to the Row axis and Item to the Column axis
       view.RowAxis.InsertFieldSet fsets("Category")
       view.ColumnAxis.InsertFieldSet fsets("Item")
       
       ' Add a new total - Sum of Price
       Set newtotal = view.AddTotal("Sum of Price", view.FieldSets("Price").Fields(0), c.plFunctionSum)
       view.DataAxis.InsertTotal newtotal
       view.DataAxis.InsertFieldSet view.FieldSets("Price")
          
       ' Set some visual properties
       PivotTable1.DisplayExpandIndicator = False
       PivotTable1.DisplayFieldList = False
       PivotTable1.AllowDetails = False
    End Sub
    
    Private Sub Form_Terminate()
      ' Remove reference to the ADO object
      Set cnnConnection = Nothing
    End Sub
    
    
    Private Sub PivotTable1_DblClick()
       Dim sel As Object
       Dim pivotagg As PivotAggregate
       Dim sTotal As String
       Dim sColName As String
       Dim sRowName As String
    
       Dim sMsg As String
       
       ' Get the selection object you double-clicked on
       Set sel = PivotTable1.Selection
       ' If it is a aggregate, you can find information about it
       If TypeName(sel) = "PivotAggregates" Then
          ' Select the first item
    
          Set pivotagg = sel.Item(0)
          ' Display the value
          MsgBox "The cell you double-clicked has a value of '" & pivotagg.Value & "'.", vbInformation, "Value of Cell"
          
          ' Get variables from the cell
          sTotal = pivotagg.Total.Caption
          sColName = pivotagg.Cell.ColumnMember.Caption
          sRowName = pivotagg.Cell.RowMember.Caption
          
          ' Display the row and column name
          sMsg = "The value is " & sTotal & " by " & sRowName & " by " & sColName
          MsgBox sMsg, vbInformation, "Value Info"
       End If
    End Sub
    					
  6. Em seguida, crie um banco de dados exemplo usando o Microsoft Access. Inicie o Access e escolha o Banco de dados Access em branco . Salve o arquivo como c:\pivottest.mdb . Clique duas vezes em criar tabela no modo Design . Digite os seguintes dados:

    Recolher esta tabelaExpandir esta tabela
    Nome do campoTipo de dados
    ItemTexto
    CategoriaTexto
    PreçoNúmero
  7. Fecha a janela e salve as alterações como Table1. Selecione não para criar uma chave. Clique duas vezes em Tabela1 e insira os seguintes dados:

    Recolher esta tabelaExpandir esta tabela
    ItemCategoriaPreço
    PregosHardware5
    CamisaRoupas23
    MarteloHardware16
    SandwichComida5
    CalçaRoupas31
    BebidasComida2
  8. Feche o Access para salvar o arquivo.
  9. Pressione a tecla F5 para executar o projeto. Após ser executado, deve preencher a tabela dinâmica. Clicar duas vezes em uma célula com dados mostra o valor da célula e a célula nomes de coluna e linha.

Referências

Para obter mais informações na automação do Office, visite o site de suporte do Microsoft Office Development em:
http://support.microsoft.com/ofd

Propriedades

ID do artigo: 235542 - Última revisão: segunda-feira, 23 de outubro de 2006 - Revisão: 3.5
A informação contida neste artigo aplica-se a:
  • Microsoft Office PivotTable Component 9.0
  • Microsoft Office XP Web Components
  • Microsoft Office 2003 Web Components
Palavras-chave: 
kbmt kbautomation kbhowto kbweb KB235542 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 235542

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com