Piloter powerpoint depuis exel - Saut de ligne conditionnel et format de paragraphe.

Oldevi

XLDnaute Nouveau
Bonjour à tous,

Je suis en train de créer un Userform qui permet d'exporter des données excel vers un slide powerpoint.

Mes textboxes vont donc renseigner des shapes dans le slide.

Mon code pour renseigner les shapes est le suivant:

With .Slides(1).Shapes("Text Box 1").TextFrame.TextRange
.Text = TextBox12 & vbCrLf & Box13 & vbCrLf & Box14 & vbCrLf & Box15
With .Characters(1, Len(TextBox12) + Len(TextBox13) + 1).Font
.Size = 10
.Bold = True
End With
With .Characters(Len(TextBox12) + Len(TextBox13) + 1, Len(TextBox14) + len(TextBox15) + 1).Font
.Size = 9
.Bold = False
End With
With .Paragraphs(2)
.ParagraphFormat.Bullet.Type = ppBulletUnnumbered
End With
With .Paragraphs(3)
.ParagraphFormat.Bullet.Type = ppBulletUnnumbered
End With
With .Paragraphs(4)
.ParagraphFormat.Bullet.Type = ppBulletUnnumbered
End With


Ma question : comment faire en sorte que la macro ne saute pas de ligne (vbCrLf) si la textbox précédente n'est pas renseigné. Dans ce cas est-il possible d'assigner à une TextBox plutôt qu'un numéro de paragraphe, le format du paragraphe : en effet je n'aurais pas le même nombre de textbox renseigné à chaque export et donc le même nombre de paragraphes.

J'espère avoir été clair.

Merci beaucoup d'avance pour votre aide.

Olivier
 

Misange

XLDnaute Barbatruc
Re : Piloter powerpoint depuis exel - Saut de ligne conditionnel et format de paragra

Bonjour
Au lieu de travailler directement avec tes textbox crée une variable :
if txtbox1<>"" then
montext1= txtbox1 & VbCrLf
else montexte1=""
end if
et concatène ensuite tes variables...
Pas du tout compris la fin de ta question...
 

Oldevi

XLDnaute Nouveau
Re : Piloter powerpoint depuis exel - Saut de ligne conditionnel et format de paragra

Merci beaucoup Misange pour ta réponse. J'étais en train de tâtonner en ce sens.

J'ai beaucoup de textbox, j'aimerais donc avoir quelque chose du genre:
For I = 1 to 20
If ("txtbox" & I) <>"" then
montext & 1 = ("txtbox" & I) & VbCrLf
else montext & 1 = ""
end if

J'ai un peu de mal à voir comment comment déclarer la variable montext et quelle syntaxe utiliser. Une idée ?

Pour mes histoires de paragraphes, je voudrais appliquer un format spécifique à chaque textbox (bullet, indent). J'ai essayé de faire ça en affectant le format au numéro de paragraphe. Le problème c'est que suivant que les textbox seront renseigné ou non les numéro de paragraph ne seront pas les mêmes dans le fichier de destination. Y a t'il un moyen d'affecter directement le format de paragraph à la variable ?

Merci.

Olivier
 

Statistiques des forums

Discussions
312 413
Messages
2 088 206
Membres
103 767
dernier inscrit
LEONG