Bonjour à tous,
j'ai un dossier Excel : Devis-pour-ppt.xlsm
depuis un formulaire contenu dans feuille "menu"
je sélectionne dans la comboboxFeu sur l'onglet devis, le type de feu
cela remplit d'après les différentes feuilles du dossier, tous les onglets du formulaire
je veux ensuite depuis VBA (pour le moment) lancer la macro PPT
qui crée un diaporama basé sur le modèle DEVIS-PPT1.pptx
j'ai trouvé un exemple sur ce forum : Lien supprimé
je l'ai adapté, mais...
j'ai deux problèmes :
1er problème : si la cellule M de la feuille "description-prod" (correspondant à la colonne "FRESQUE" est différente de 0, alors créer diaporama en dupliquant la diapo 1
et en remplissant les différentes cellules du tableau de la diapo1 avec les valeurs correspondantes de la feuille "description-prod"
==========
cela crée bien le diaporama mais :
1. ne tient pas compte de la valeur de la cellule M --> fusionne toutes les cellules même = 0
2. ne remplit pas les lignes suivantes du tableau du diaporama
3. met les diapos dans l'ordre inverse : commence la fusion par la dernière cellule et non la première
======================================================
2ème problèmeje voudrais sur le même diaporama, en diapo 2
insérer l'image qui correspond à la cellule M <> 0 et dont le chemin est contenu dans la colonne N de la feuille "description-prod"
et là je sèche quant à la bonne syntaxe en sachant que je dois avoir en résultat final :
diapo 1 avec les données
et à la suite diapo 2 avec l'image correspond au données de la diapo 1
et ainsi de suite
======================================================
un peu complexe n'est-ce-pas ?
je suis sûre de ne pas être loin du bon résultat
mais je n'y vois plus clair du tout
votre aide serait la bienvenue !
je joins le dossier pour plus de compréhension :
https://rcpt.yousendit.com/1021324747/6552a279085803f86b1e702ac7e13477
et d'avance merci
j'ai un dossier Excel : Devis-pour-ppt.xlsm
depuis un formulaire contenu dans feuille "menu"
je sélectionne dans la comboboxFeu sur l'onglet devis, le type de feu
cela remplit d'après les différentes feuilles du dossier, tous les onglets du formulaire
je veux ensuite depuis VBA (pour le moment) lancer la macro PPT
qui crée un diaporama basé sur le modèle DEVIS-PPT1.pptx
j'ai trouvé un exemple sur ce forum : Lien supprimé
je l'ai adapté, mais...
j'ai deux problèmes :
1er problème : si la cellule M de la feuille "description-prod" (correspondant à la colonne "FRESQUE" est différente de 0, alors créer diaporama en dupliquant la diapo 1
et en remplissant les différentes cellules du tableau de la diapo1 avec les valeurs correspondantes de la feuille "description-prod"
Code:
Sub PPT()
Dim objPPT As Object
Dim objPres As Object
Dim objSld As Object
Dim objShp As Object
Dim Rg As Range
With Sheets("description-prod")
Tablo = Range("A2:N" & Range("N65000").End(xlUp).Row).Value
End With
Set objPPT = CreateObject("Powerpoint.Application")
objPPT.Visible = True
Set objPres = objPPT.Presentations.Open(ThisWorkbook.Path & "\DEVIS-PPT1.pptx")
objPres.SaveAs ThisWorkbook.Path & "\testdevis.pptx"
'recherche de la dernière cell M
With Worksheets("description-prod")
Set Rg = .Range("M2:M" & Range("M65000").End(xlUp).Row)
End With
'si la cell M est différente de 0, alors fusion entre Excel et Ppt
If ActiveCell <> 0 Then
For i = 1 To UBound(Tablo)
Set objSld = objPres.Slides(1).Duplicate
For Each objShp In objSld.Shapes
If objShp.HasTable Then
With objShp.Table
X = X + 1
.cell(1, 1).Shape.TextFrame.TextRange.Text = Tablo(X, 13)
.cell(4, 1).Shape.TextFrame.TextRange.Text = Tablo(X, 6)
.cell(4, 2).Shape.TextFrame.TextRange.Text = Tablo(X, 7)
.cell(5, 2).Shape.TextFrame.TextRange.Text = Tablo(X, 11)
.cell(5, 3).Shape.TextFrame.TextRange.Text = Tablo(X, 12)
End With
End If
Next
Next
Else
ActiveCell.Offset(1, 0).Range("A1").Select
End If
objPres.Slides(1).Delete
objPres.save
objPres.Close
End Sub
cela crée bien le diaporama mais :
1. ne tient pas compte de la valeur de la cellule M --> fusionne toutes les cellules même = 0
2. ne remplit pas les lignes suivantes du tableau du diaporama
3. met les diapos dans l'ordre inverse : commence la fusion par la dernière cellule et non la première
======================================================
2ème problèmeje voudrais sur le même diaporama, en diapo 2
insérer l'image qui correspond à la cellule M <> 0 et dont le chemin est contenu dans la colonne N de la feuille "description-prod"
et là je sèche quant à la bonne syntaxe en sachant que je dois avoir en résultat final :
diapo 1 avec les données
et à la suite diapo 2 avec l'image correspond au données de la diapo 1
et ainsi de suite
======================================================
un peu complexe n'est-ce-pas ?
je suis sûre de ne pas être loin du bon résultat
mais je n'y vois plus clair du tout
votre aide serait la bienvenue !
je joins le dossier pour plus de compréhension :
https://rcpt.yousendit.com/1021324747/6552a279085803f86b1e702ac7e13477
et d'avance merci