Comment faire pour automatiser PowerPoint à l'aide de Visual J ++ 6.0

Traductions disponibles Traductions disponibles
Numéro d'article: 215484 - Voir les produits auxquels s'applique cet article
Cet article a été archivé. Il est proposé « en l'état » et ne sera plus mis à jour.
Agrandir tout | Réduire tout

Résumé

Cet article explique comment automatiser Microsoft PowerPoint à l'aide de Visual J ++ 6.0. Vous pouvez également appliquer un code similaire et les procédures analogues pour automatiser d'autres applications Microsoft Office.

Plus d'informations

Suivez ces étapes pour générer et exécuter l'exemple Visual J ++.
  1. Démarrez Visual J ++ 6.0. Créez un nouveau projet console application et nommez-la JavaPpt.
  2. Dans la fenêtre Explorateur de projets, ouvrez l'arborescence de votre projet et double-cliquez sur le fichier Class1.Java créé pour vous.
  3. Dans le menu projet, cliquez sur Ajouter un wrapper COM, cliquez sur Bibliothèque d'objets Microsoft PowerPoint 8.0 (ou 9.0 pour PowerPoint 2000 ou 10.0 pour PowerPoint 2002.) et cliquez sur OK. Cela ajoute les wrappers COM Java dérivés de la msppt8.olb de bibliothèque de type PowerPoint à votre projet. La bibliothèque de type pour PowerPoint 2000 est nommé msppt9.0lb. La bibliothèque de type pour PowerPoint 2002 est msppt.olb.
  4. En haut de votre fichier Class1.Java, ajoutez les instructions d'importation suivantes :
    import msppt8.*; // PowerPoint support.  Use msppt9.* for 2000, and msppt.* for 2002
    import com.ms.com.*; // Variant & exception support. 
    import java.lang.InterruptedException; // Needed for Thread.sleep().
    						
  5. Dans votre fonction main(), ajoutez le code suivant :
    // Force COM objects to be created on the current thread.
    // Otherwise, older VMs might not release all references
    // and PowerPoint might continue to run after you shutdown.
    ComLib.declareMessagePumpThread();
    	
    // Launch PowerPoint.
    Application app = new Application();
    			
    // Add a presentation.
    Presentation pres = app.getPresentations().Add(1);
    
    // Add a slide with text layout.
    Slide slide1 = pres.getSlides().Add(1, PpSlideLayout.ppLayoutText);
    // Add text to slide.
    slide1.getShapes().Item(new Variant(1)).getTextFrame().getTextRange().setText("My first slide");
    	slide1.getShapes().Item(new Variant(2)).getTextFrame().getTextRange().setText("Automating PowerPoint is easy!\r\nUsing VJ++ is fun.");
    
    // Add another slide, but with text and chart.
    Slide slide2 = pres.getSlides().Add(2, PpSlideLayout.ppLayoutTextAndChart);
    // Add text to slide.
    slide2.getShapes().Item(new Variant(1)).getTextFrame().getTextRange().setText("Slide 2's topic");
    slide2.getShapes().Item(new Variant(2)).getTextFrame().getTextRange().setText("You can create and use charts in your PowerPoint slides!");
    
    // Add chart where default chart is.
    {
    	Variant index = new Variant(3);
    	float top = slide2.getShapes().Item(index).getTop();
    	float width = slide2.getShapes().Item(index).getWidth();
    	float height = slide2.getShapes().Item(index).getHeight();
    	float left = slide2.getShapes().Item(index).getLeft();
    	slide2.getShapes().AddOLEObject(left, top, width, height, "MSGraph.Chart", "", 0, "", 0, "", 0);
    	// Remove old/default chart.
    	slide2.getShapes().Item(index).Delete();
    }
    
    // Add another slide, but with text and org-chart.
    Slide slide3 = pres.getSlides().Add(3, PpSlideLayout.ppLayoutOrgchart);
    // Add title for this slide.
    slide3.getShapes().Item(new Variant(1)).getTextFrame().getTextRange().setText("The rest is only limited by your Imagination");
    // Add a new org chart where existing one is.
    {
    	Variant index = new Variant(2);
    	float top = slide3.getShapes().Item(index).getTop();
    	float width = slide3.getShapes().Item(index).getWidth();
    	float height = slide3.getShapes().Item(index).getHeight();
    	float left = slide3.getShapes().Item(index).getLeft();
    	slide3.getShapes().AddOLEObject(left, top, width, height, "OrgPlusWOPX.4", "", 0, "", 0, "", 0);
             // OrgPlusWOPX.4 is provided by the Microsoft Organization Chart application.
    	// Remove old/default org-chart.
    	slide3.getShapes().Item(index).Delete();		
    }
    	
    // Setup slide-show properties.
    {
    	Variant varOpt = new Variant();
    	varOpt.noParam();
    	SlideShowTransition sst;
    	sst = pres.getSlides().Range(varOpt).getSlideShowTransition();
    	sst.setEntryEffect(PpEntryEffect.ppEffectRandom);
    	sst.setAdvanceOnTime(1);
    	sst.setAdvanceTime(5); // 5 seconds per slide
    	sst = null;
    }
    {
    	SlideShowSettings sss;
    	sss = pres.getSlideShowSettings();
    	sss.setShowType(PpSlideShowType.ppShowTypeKiosk);
    	sss.setLoopUntilStopped(1);
    	sss.setRangeType(PpSlideShowRangeType.ppShowAll);
    	sss.setAdvanceMode(PpSlideShowAdvanceMode.ppSlideShowUseSlideTimings);
    	// Run slide show...
    	sss.Run();
    	sss = null;
    }
    
    // Sleep for a while so user can watch slide show.
    try {
    	Thread.sleep(15000);
    } catch(InterruptedException e) {}
    
    // Stop slide show.
    try {
    	pres.getSlideShowWindow().getView().Exit();
    } catch(ComFailException e) {}
    	
    // Clean up.
    pres.Close();
    app.Quit();
    slide3 = null;
    slide2 = null;
    slide1 = null;
    pres = null;
    app = null;
    						
  6. Dans le menu Déboguer, cliquez sur Démarrer (ou appuyez sur F5) pour générer et exécuter l'exemple.

Références

Pour plus d'informations sur Visual J ++ et Automation, consultez les articles suivants dans la base de connaissances Microsoft :
INFO 169173 : fréquemment poser des questions sur Visual J ++

Propriétés

Numéro d'article: 215484 - Dernière mise à jour: lundi 10 février 2014 - Version: 4.4
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft PowerPoint 2002 Standard
  • Microsoft PowerPoint 2000 Standard
  • Microsoft PowerPoint 97 Standard
  • Microsoft Visual J++ 6.0 Édition standard
Mots-clés : 
kbnosurvey kbarchive kbmt kbautomation kbhowto KB215484 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: 215484
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