[R] Conversion doc/xls/ppt --> docx/xlsx/pptx

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Teckos
Niveau 2
Niveau 2
Messages : 18
Enregistré le : mar. 18 sept. 2012 23:32
Status : Hors ligne

[R] Conversion doc/xls/ppt --> docx/xlsx/pptx

#1

Message par Teckos »

Bonjour à tous,

Je travaille sur un script pour le boulot, le but est de convertir les formats doc / xls / ppt ( Respectivement Word / Excel et PowerPoint donc ) dans les nouveaux formats de Microsoft à savoir docx / xlsx / pptx, pour ceux qui peuvent se demander la raison c'est un gain de place qui peut être énorme sur un très grand nombre de documents.

Mon script fonctionne très bien avec les doc, pas toujours avec les xls et quasiment jamais avec les ppt.
A savoir que quand je commente la partie de code pour les ppt, les xls on l'air de fonctionner plus souvent mais ce n'est pas garanti.

Voilà je suis vraiment dans le flou si une âme charitable peut m'aider je lui en serais très reconnaissant.
► Afficher le texteCode
Je vous joint également les deux UDF qui sont utilisés : _FileListToArrayEx_v3.au3 et Powerpoint.au3.
Fichiers joints
Powerpoint.au3
(15.43 Kio) Téléchargé 99 fois
_FileListToArrayEx_v3.au3
(4.9 Kio) Téléchargé 85 fois
Modifié en dernier par Teckos le jeu. 07 avr. 2016 09:35, modifié 2 fois.
Avatar du membre
walkson
Modérateur
Modérateur
Messages : 1037
Enregistré le : ven. 12 août 2011 19:49
Localisation : Hurepoix
Status : Hors ligne

Re: [..] Conversion doc/xls/ppt --> docx/xlsx/pptx  

#2

Message par walkson »

Bonjour,
Pour PowerPoint

Code : Tout sélectionner

$File = @ScriptDir & "\NewAFormatCopy.ppt"
$objPPT = ObjCreate("PowerPoint.Application")
$objopen = $objPPT.Presentations.Open ($File, 0, 0, 0) ;msoFalse
   $path = $objopen.Application.Presentations("NewAFormatCopy.ppt").Path
	$nameCpt = $objopen.Application.Presentations("NewAFormatCopy.ppt").Name
	$name = StringTrimRight($nameCpt,4)
    $objopen.Application.Presentations("NewAFormatCopy.ppt").SaveCopyAs ($path & "\"& $name & "-Conversion.pptx", 24);ppSaveAsOpenXMLPresentation
	$objopen.Application.Presentations("NewAFormatCopy.ppt").Close
Ou autrement, à la condition que PowerPoint soit ouvert que pour le fichier

Code : Tout sélectionner

$File = @ScriptDir & "\NewAFormatCopy.ppt"
$objPPT = ObjCreate("PowerPoint.Application")
$objopen = $objPPT.Presentations.Open ($File, 0, 0, 0) ;msoFalse
   $path = $objopen.Application.Presentations.Item(1).Path
	$nameCpt = $objopen.Application.Presentations.Item(1).Name
	$name = StringTrimRight($nameCpt,4)
    $objopen.Application.Presentations.Item(1).SaveCopyAs ($path & "\"& $name & "-Conversion.pptx", 24);ppSaveAsOpenXMLPresentation
	$objopen.Application.Presentations.Item(1).Close
Cordialement,
Walkson
"Horas non numero nisi serenas " Le canon de midi
(Je ne compte que les heures heureuses)
Teckos
Niveau 2
Niveau 2
Messages : 18
Enregistré le : mar. 18 sept. 2012 23:32
Status : Hors ligne

Re: [..] Conversion doc/xls/ppt --> docx/xlsx/pptx

#3

Message par Teckos »

Merci à vous, j'ai pu adapter à partir de votre code ce qui ne fonctionné pas et corriger certaines de mes erreurs, tout à l'air de fonctionner pour l'instant =)
Répondre