PowerPoint2007年SP2、ExportAsFixedFormatにユー?
-
23-08-2019 - |
質問
昨日のためのバッチに変換するグループのPPTsへのPdfの友人のために、私は見てユーで座っていて私のHD。
こちらのコードだ。
$p = new-object -comobject powerpoint.application
# I actually don't know why I have to set the window to visible,
# but it doesn't work otherwise, anyway, it's not the real problem I have
$p.visible = 1
$f = $p.presentations.open('\some\file.ppt')
$f.ExportAsFixedFormat('\some\newfile.pdf', 2)
以降、"力任せ"の方法に動作しなかった("タイプのミスマッチ")を試みた輸入のenumタイプ
$pptypepdf= [Microsoft.Office.Interop.PowerPoint.PpFixedFormatType]::PpFixedFormatTypePDF
$f.ExportAsFixedFormat('\some\newfile.pdf', $pptypepdf)
の不思議なものではない捨て"タイプのミラー---
また、save as作品とは、
$f.SaveAs('\some\newfile.pdf', 32) # 32 is for PDF
なぜですか?
更新
関連するドキュメンテーション
このエラーメッセージ
$pptypepdf= [Microsoft.Office.Interop.PowerPoint.PpFixedFormatType]::PpFixedFormatTypePDF
$f.ExportAsFixedFormat($filepath, $pptypepdf)
Exception calling "ExportAsFixedFormat" with "2" argument(s): "Type mismatch. (Exception from HRESULT: 0x80020005 (DISP_E_TYPEMISMATCH))"
At line:1 char:23
+ $f.ExportAsFixedFormat <<<< ($filepath, $pptypepdf)
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ComMethodTargetInvocation
正しい解決策はありません
他のヒント
私はPythonで同じ問題に遭遇しました。ステファンSchukatによって溶液中で言ったようにPrintRange
引数を指定してみます:
このは、PowerPointのバグです。それは、オプションで[」定義します DEFAULTVALUE世代につながる(0)] PrintRange * PrintRange」 Pythonラッパーの "PrintRange = 0" の。したがって、あなたが買ってあげます エラーメソッドを呼び出します。だから、makepyの問題はありません。回避策 なしVALIのCOMオブジェクトではありませんので、PrintRange =なしでメソッドを呼び出します。 例えば。 presentation.ExportAsFixedFormat(pptFile + 'PDF' win32com.client.constants.ppFixedFormatTypePDF、 win32com.client.constants.ppFixedFormatIntentScreen、PrintRange =なし) 動作するはずです。
出典:型が一致しませんPowerPoint 2007の輸出のfuctionする
<時間>私はすべてのPowerShellを知らないが、実施例を働いています:
$p.ActivePresentation.PrintOptions.Ranges.Add(1,1)
$r = $p.ActivePresentation.PrintOptions.Ranges.Item(1)
$document.ExportAsFixedFormat('D:\\ps.pdf', 2, 1, 0, 1, 1, 0, $r)
これは完全なソリューションではありませんが、エクスポートが行われます。それは何とかノースライドするだけでなく、完全なプレゼンテーションをエクスポートします。 1、私は思った通り。後記ああ。ここで、同じソリューションのだ。