De Office Web Component Draaitabel gebruiken in combinatie met VB

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 235542 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Op deze pagina

Samenvatting

In dit artikel wordt beschreven hoe u met de Office Web Component (OWC) Draaitabel gegevens kunt weergeven in een Visual Basic-formulier.

Meer informatie

De Office Web Components zijn een set besturingselementen waarmee u Office-gegevens kunt opvragen. Aangezien het om besturingselementen gaat, kunt u een Office Web Component toevoegen aan een Visual Basic-formulier en het besturingselement vervolgens instellen voor het automatisch weergeven van bepaalde gegevens.

Automatiseringsvoorbeeld

  1. Start Visual Basic en maak een nieuw standaard-EXE-project. Formulier1 wordt standaard gemaakt.
  2. Voeg onder Project|Verwijzingen een verwijzing toe naar de Microsoft ActiveX Data Objects 2.1 Library en klik op OK.
  3. Druk op CTRL+T om het dialoogvenster Onderdelen weer te geven. Voeg Microsoft Office Web Components toe en klik op OK.

    Opmerking Office XP bevat zowel Office 2000 als Office XP Web Components. Als u Office 2003 Web Components wilt gebruiken, voegt u de bibliotheek van Microsoft Office Web Components 11.0 toe. Als u Office 2000 Web Components wilt gebruiken, voegt u de bibliotheek van Microsoft Office Web Components 9.0 toe. Als u Office XP Web Components wilt gebruiken, voegt u de bibliotheek van Microsoft Office Web Components 10.0 toe.
  4. Voeg een draaitabel toe aan het formulier.
  5. Typ in het codevenster voor Formulier1 de volgende code:
    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. Maak nu een voorbeelddatabase met Microsoft Access. Start Access en kies Lege Access-database. Sla het bestand op met de naam c:\pivottest.mdb. Dubbelklik op Tabel maken in ontwerpweergave. Voer de volgende gegevens in:

    Deze tabel samenvouwenDeze tabel uitklappen
    Veldnaam:Gegevenstype:
    ArtikelTekst
    CategorieTekst
    PrijsNumeriek
  7. Sluit het venster en sla de wijzigingen op als Tabel1. Klik op Nee als wordt gevraagd of u een primaire sleutel wilt instellen. Dubbelklik op Tabel1 en voer de volgende gegevens in:

    Deze tabel samenvouwenDeze tabel uitklappen
    Artikel CategoriePrijs
    SpijkersGereedschap5
    ShirtKleding23
    HamerGereedschap16
    BroodVoedsel5
    BroekKleding31
    DrankVoedsel2
  8. Sluit Access af om het bestand op te slaan.
  9. Druk op F5 om het project uit te voeren. De draaitabel moet vervolgens worden gevuld. Dubbelklik in een cel met gegevens om de waarde van de cel weer te geven, evenals de namen van de kolom en rij.

Referenties

Ga voor meer informatie over Office Automation naar de site Office Development van Microsoft:
http://support.microsoft.com/ofd

Eigenschappen

Artikel ID: 235542 - Laatste beoordeling: maandag 12 december 2005 - Wijziging: 3.3
De informatie in dit artikel is van toepassing op:
  • Microsoft Office PivotTable Component 9.0
  • Microsoft Office Web Components
  • Microsoft Office Web Components
Trefwoorden: 
kbhowto kbweb kbautomation KB235542

Geef ons feedback

 

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