Comment faire pour utiliser le composant Web Office de tableau croisé dynamique avec Visual Basic

Traductions disponibles Traductions disponibles
Numéro d'article: 235542 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article explique comment utiliser le tableau croisé dynamique pour afficher des informations sur un formulaire Visual Basic d'un composant Web.

Plus d'informations

Les composants Web Office sont un ensemble de contrôles qui Activer la navigation de données de bureau. Étant donné que les composants Web sont des contrôles, vous pouvez les placer sur un formulaire Visual Basic et automatiser les composants pour afficher les données.

Création de l'exemple d'automation

  1. Démarrez Visual Basic et créez un nouveau projet EXE standard. Form1 est créé par défaut.
  2. Sous Project|References , ajouter une référence à la Bibliothèque Microsoft ActiveX Data Objects 2.1 , puis cliquez sur OK .
  3. Appuyez sur les touches CTRL + T pour afficher la boîte de dialogue Ajouter des composants . Ajouter les composants Microsoft Office Web Components, puis cliquez sur OK .

    Remarque : Office XP comprend à la fois Office 2000 et Office XP Web Components. Pour utiliser Office 2003 Web Components, ajouter Microsoft Office Web Components 11.0 bibliothèque. Pour utiliser Office 2000 Web Components, ajoutez la bibliothèque Microsoft Office Web Components 9.0. Pour utiliser le Web Office XP composants, ajoutez la bibliothèque Microsoft Office Web Components 10.0.
  4. Ajouter un tableau croisé dynamique au formulaire.
  5. Dans la fenêtre de code pour Form1, insérez le code suivant :
    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. Ensuite, créer un exemple de base de données à l'aide de Microsoft Access. Démarrez Access et cliquez sur base de données Access vide . Enregistrez le fichier en tant que c:\pivottest.mdb . Double-cliquez sur Créer la table en mode Création . Entrez les données suivantes :

    Réduire ce tableauAgrandir ce tableau
    Nom de champType de données
    ArticleTexte
    CatégorieTexte
    PrixNombre
  7. Fermez la fenêtre et enregistrer les modifications en tant que Table1. Sélectionnez non pour créer une clé. Double-cliquez sur Table1 et entrez les données suivantes :

    Réduire ce tableauAgrandir ce tableau
    ArticleCatégoriePrix
    NailsMatériel5
    ChemiseVêtements23
    MarteauMatériel16
    SandwichRepas5
    PantalonVêtements31
    GazeusesRepas2
  8. Fermez Access pour enregistrer le fichier.
  9. Appuyez sur la touche F5 pour exécuter le projet. Après l'exécution, le tableau croisé dynamique doit remplir. Double-cliquez sur une cellule avec des données affiche la valeur de la cellule et la cellule noms de colonne et ligne.

Références

Pour plus d'informations sur Office Automation, le site Microsoft Office Development prise en charge à :
http://support.microsoft.com/ofd

Propriétés

Numéro d'article: 235542 - Dernière mise à jour: lundi 23 octobre 2006 - Version: 3.5
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Office PivotTable Component 9.0
  • Microsoft Office XP Web Components
  • Microsoft Office 2003 Web Components
Mots-clés : 
kbmt kbautomation kbhowto kbweb KB235542 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 235542
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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