rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[VBA: Excel-Powerpoint] passage de variables

Posté par Karl Max, le lundi 21 mai 2007 à 12:15:30
Bonjour!
(VBA Excel Powerpoint)Je cherche a faire un truc un peu compliqué, et je n'ai pas trouvé comment faire sur internet:

J'ai une feuille de calcul excel et une présentation powerpoint.
Je veux entrer des variables dans ma presentation, faire tourner la feuille de calcul, puis récuperer les résultats sur ma présentation. Ca serait simple si le fichier excel n'etait pas trop gros pour faire un collage spécial (trop lent)
Donc si quelqu 'un voit comment faire en VBA, ca m'interesse beaucoup!
Merci beaucoup
Configuration: Windows XP
Internet Explorer 6.0
Répondre à Karl Max  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
irem32, le lundi 21 mai 2007 à 14:06:16
Perso, je le ferais de la manière suivante :

1°) Rentrer les param dans Powerpoint
2°) D'une macro Powerpoint, instancier et lancer (dans le même répertoire) le bon fichier excel et indexer les bonnes valeurs
3°) Lire ensuite les résultats toujours depuis Powerpoint pour mettre à jour la pres.

Ca c'est uniquement si les formules sont réellement complexes ou s'appuie sur des données externes et nécessite vraiment excel, sinon transposer les formules excel en formules vba sous powerpoint, plus simple et plus rapide.

Irem
Répondre à irem32

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Lupin.A, le lundi 21 mai 2007 à 14:25:24
Bonjour,

En fait, sous VBA de powerpoint il vous est possible de piloter
excel ou vice et versa bien sur, toute la suite bureautique est
pilotable, j'ai essayé excel,access et word !

Vous voulez donc cumuler des données saisies au cours de
votre présentation et ouvrir excel au bon moment afin d'alimenter
votre classeur et d'en récupérer les données "calculer/modifier".

Ai-je bien compris votre besoin ?

Lupin
Répondre à Lupin.A

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Karl Max, le lundi 21 mai 2007 à 14:40:52
Bonjour Lupin A et irem 32
Merci pour vos réponses. En effet, Lupin A, vous avez tout a fait compris mon probleme. J'ai essayé de taper un code VBA pour essayer de piloter Excel depuis le VB de powerpoint, mais il ne marche pas, vraissemblablement à cause d'une erreur de syntaxe (je ne suis pas tres familié avec ce genre de programmation)
Pouriez vous me dire quel sont les grosses erreur qui vous saute aux yeux?
Merci d'avance

Sub ModifierFeuilleExcel()

'Déclaration des variables
Dim appExcel As Excel.Application 'Application Excel
Dim wbExcel As Excel.Workbook 'Classeur Excel
Dim wsExcel As Excel.Worksheet 'Feuille Excel



'Ouverture de l'application
Set appExcel = CreateObject("Excel.Application")
'Ouverture d'un fichier Excel
Set wbExcel = appExcel.Workbooks.Open("C:\Documents and Settings\Utilisateur\Bureau\test1.xls")

With wbExcel
'copie de la Textbox de Powerpoint dans la feuille Excel active
Feuil1.Range("A1:B2") = TextBox1.Text

End With
End Sub


Merci d'avance!!
Répondre à Karl Max

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Karl Max, le lundi 21 mai 2007 à 14:45:06
Ps: Message d'erreur:
Proprieté ou methode non gérrée par cet objet
Répondre à Karl Max

5


  • 2
    Ce message vous semble utile, votez !
  • Ce message ne vous semble pas utile, votez !
  • Signaler ce message aux modérateurs
EBasta, le lundi 21 mai 2007 à 15:06:18
Bonjour,

Le code VBA à placer dans PowerPoint serait de la forme :

Sub ModifierFeuilleExcel()

'Déclaration des variables
Dim xlApplication As Object

Set xlApplication = CreateObject("excel.application")

With xlApplication
.Workbooks.Open ("C:\Documents and Settings\Utilisateur\Bureau\test1.xls")
.sheets("Feuil1").Cells(1, 1) = TextBox1.Value
.Save
.Quit
End With

End Sub

J'espère avoir bien répondu.
Répondre à EBasta

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
irem32, le lundi 21 mai 2007 à 15:06:28
ce devrait etre plutot

With wbExcel
'copie de la Textbox de Powerpoint dans la feuille Excel active
'Feuil1.Range("A1:B2") = TextBox1.Text
.Worksheets(1).Cells(1, 2).Value =TextBox1.text
'par exemple
End With

Irem32
Répondre à irem32

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Karl Max, le lundi 21 mai 2007 à 15:38:32
Merci beaucoup pour vos reponses!!!

J'ai finalement adopté la réponse de Ebasta :
Sub ModifierFeuilleExcel()

'Déclaration des variables
Dim xlApplication As Object

Set xlApplication = CreateObject("excel.application")

With xlApplication
.Workbooks.Open ("C:\Documents and Settings\Utilisateur\Bureau\test1.xls")
.sheets("Feuil1").Cells(1, 1) = TextBox1.Value
.Save
.Quit
End With

End Sub


Propre, efficace et élégant!
merci aussi Irem32 pour votre correction.
Répondre à Karl Max

9


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 nobo, le vendredi 22 juin 2007 à 07:36:58
Bonjour,

Je suis à la recherche de la même problématique décrite dans le code ci-dessus.

J'essaie d'utiliser la procédure, mais lors de la compiltation un message d'erreur

Type défini par l'utilisateur non défini.

Merci de votre aide
Répondre à nobo

8


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Lupin.A, le lundi 21 mai 2007 à 15:57:48
Bonjour,

autres exemple, votre code que je me suis permis de modifier :

' Déclaration de Types
' Déclaré vous un type personalisé
'
Type Presentation
	Indice As Long
	NomFichier As String
	Parametres(3) As Long
	Resultats(2) As Long
End Type

Public CePPT As Presentation

Sub ModifierFeuilleExcel() 

    'Déclaration des variables
    ' Je recommande d'utiliser le type [ Variant ], en VBS
    ' (Visual Basic Scripting), les variables sont déclarés
    ' mais non typés puisque tous natifs en [ Variant ].
    ' Ainsi si le code demeure des objets VBS pur sous
    ' VBA, la transportabilité du code l'est sous toutes
    ' les composantes de Office ( Word, Excel, Acess, PowerPoint, ...)
    ' D'ou le choix de typé les objets en [ Variant ]
    Dim appExcel As Variant 'Application Excel 
    Dim wbExcel As Variant 'Classeur Excel 
    Dim wsExcel As Variant 'Feuille Excel 

    'En suposant que le fihier excel (*.xls) est au même endroit
    ' que le fichier powerpoint (*.ppt;*.pps), accéder au fichier
    ' de façon relative : 
    Dim NomFichier As String, Boucle As Long

    ' La valeur de la variable peut-être saisie n'importe
    ' quand depuis powerpoint(vba)
    CePPT.NomFichier = "Test.xls"

    NomFichier = ActivePresentation.FullName
    NomFichier = Left(varFichier, InStrRev(NomFichier, "\"))
    NomFichier = NomFichier & CePPT.NomFichier

    'Ouverture de l'application 
    Set appExcel = CreateObject("Excel.Application") 
    'Ouverture d'un fichier Excel 
    Set wbExcel = appExcel.Workbooks.Open(NomFichier) 
    ' Main mise sur la feuille 1
    Set xlWKS = wbExcel.Worksheets(1)
    ' Main mise sur l'adressage de la feuille
    Set xlRange = xlWKS.Range("A1:A65535")

    For Boucle = 1 To 3
        xlRange.Cells(1,i).Value = CePPT.Parametres(Boucle-1)
    Next Boucle

    For Boucle = 1 To 2
        CePPT.Resultats(Boucle-1) = xlRange.Cells(2,i).Value
    Next Boucle

End Sub 
'

Lupin
Répondre à Lupin.A
Logiciels pertinents trouvés dans les téléchargements
Télécharger Password Pond   1.0Password Pond - Il n'est pas toujours aisé de devoir créer des mots de passe à chaque fois qu'on vous le demande. En plus le fait d'utiliser...Catégorie: Personnalisation
Licence: Freeware/gratuit
Télécharger Powerpoint Viewer 2003Powerpoint Viewer - La Visionneuse PowerPoint 2003 vous permet d'afficher des présentations dotées de toutes les fonctionnalités créées dans...Catégorie: Présentation
Licence: Freeware/gratuit
Télécharger Excel Viewer 2003Excel Viewer - Avec Microsoft Office Excel Viewer 2003, vous pouvez ouvrir, afficher et imprimer des classeurs Excel (fichiers XLS ), même...Catégorie: Tableur
Licence: Freeware/gratuit
Télécharger PowerPointImageExtractor 1.2PowerPointImageExtractor - PowerpointImageExtractor est un logiciel gratuit qui permet d'extraire les images et les fichiers wave contenus dans les...Catégorie: Présentation
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [VBA: Excel Powerpoint] passage de variables »