如何將 PivotTable Office Web 元件與 VB 搭配使用

結論
本文將告訴您,如何使用 PivotTable Office Web 元件,在 Visual Basic 表單上顯示資訊。
其他相關資訊
Office Web 元件是一組啟用 Office 資料瀏覽功能的控制項。由於 Web 元件是控制項,因此,您可以將這些控制項放在 Visual Basic 表單上,並使這些元件自動顯示資料。

建立自動化範例

  1. 開啟 Visual Basic,並建立新的標準執行檔專案。根據預設會建立 Form1。
  2. [專案] | [參考] 底下,新增 [Microsoft ActiveX Data Objects 2.1 Library] 的參考,然後按一下 [確定]
  3. 按下 CTRL+T 鍵,以顯示 [新增元件] 對話方塊。新增 Microsoft Office Web 元件,然後按一下 [確定]

    注意:Office XP 包括了 Office 2000 和 Office XP Web 元件。如果要使用 Office 2003 Web 元件,請新增 Microsoft Office Web Components 11.0 程式庫。如果要使用 Office 2000 Web 元件,請新增 Microsoft Office Web Components 9.0 程式庫。如果要使用 Office XP Web 元件,請新增 Microsoft Office Web Components 10.0 程式庫。
  4. 將 PivotTable 新增至表單。
  5. 在 Form1 的程式碼視窗中,插入下列程式碼:
    Option ExplicitDim cnnConnection As ObjectPrivate Sub Form_Load()Dim strProvider As StringDim view As PivotViewDim fsets As PivotFieldSetsDim c As ObjectDim newtotal As PivotTotal   strProvider = "Microsoft.Jet.OLEDB.4.0"' Create an ADO objectSet cnnConnection = CreateObject("ADODB.Connection")' Set the provider and open the connection to the databasecnnConnection.Provider = strProvidercnnConnection.Open "C:\pivottest.mdb"' Set the pivot table's connection string to the cnnConnection's connection stringPivotTable1.ConnectionString = cnnConnection.ConnectionString' SQL statement to get everything from table1PivotTable1.CommandText = "Select * from table1"   ' Get variables from the pivot tableSet view = PivotTable1.ActiveViewSet fsets = PivotTable1.ActiveView.FieldSetsSet c = PivotTable1.Constants   ' Add Category to the Row axis and Item to the Column axisview.RowAxis.InsertFieldSet fsets("Category")view.ColumnAxis.InsertFieldSet fsets("Item")   ' Add a new total - Sum of PriceSet newtotal = view.AddTotal("Sum of Price", view.FieldSets("Price").Fields(0), c.plFunctionSum)view.DataAxis.InsertTotal newtotalview.DataAxis.InsertFieldSet view.FieldSets("Price")      ' Set some visual propertiesPivotTable1.DisplayExpandIndicator = FalsePivotTable1.DisplayFieldList = FalsePivotTable1.AllowDetails = FalseEnd SubPrivate Sub Form_Terminate()' Remove reference to the ADO objectSet cnnConnection = NothingEnd SubPrivate Sub PivotTable1_DblClick()Dim sel As ObjectDim pivotagg As PivotAggregateDim sTotal As StringDim sColName As StringDim sRowName As StringDim sMsg As String   ' Get the selection object you double-clicked onSet sel = PivotTable1.Selection' If it is a aggregate, you can find information about itIf TypeName(sel) = "PivotAggregates" Then' Select the first itemSet pivotagg = sel.Item(0)' Display the valueMsgBox "The cell you double-clicked has a value of '" & pivotagg.Value & "'.", vbInformation, "Value of Cell"      ' Get variables from the cellsTotal = pivotagg.Total.CaptionsColName = pivotagg.Cell.ColumnMember.CaptionsRowName = pivotagg.Cell.RowMember.Caption      ' Display the row and column namesMsg = "The value is " & sTotal & " by " & sRowName & " by " & sColNameMsgBox sMsg, vbInformation, "Value Info"End IfEnd Sub					
  6. 接著,使用 Microsoft Access 建立範例資料庫。啟動 Access 並選擇 [Access 空白資料庫]。將檔案另存為 c:\pivottest.mdb。按兩下 [使用設計檢視建立資料表]。輸入下列資料:

    欄位名稱資料類型
    項目文字
    類別文字
    價格數字
  7. 關閉視窗並將變更另存為 Table1。詢問您是否建立索引鍵,請選取 [否]。按兩下 Table1 並輸入下列資料:

    項目類別價格
    釘子五金5
    襯衫衣物23
    鐵錘五金16
    三明治食品5
    褲子衣物31
    飲料食品2
  8. 關閉 Access 以儲存檔案。
  9. 按下 F5 鍵以執行專案。開始執行之後,應該會填入樞紐分析表。按兩下含有資料的儲存格,即會顯示儲存格的值以及儲存格的欄名和列名。
参考
如需有關 Office Automation 的詳細資訊,請造訪 Microsoft Office Development 支援網站:
owc pivot table
內容

文章識別碼:235542 - 最後檢閱時間:12/14/2005 09:02:00 - 修訂: 3.4

Microsoft Office PivotTable Component 9.0, Microsoft Office Web Components, Microsoft Office Web Components

  • kbhowto kbweb kbautomation KB235542
意見反應