プログラミングでパワーポイントを操作する方法を解説します。
操作する内容としては、スライドをコピペし、複製したスライド内のテキストを「test」と書き換えます。
使用する言語はC#です。
参照の取得
まずはパワーポイントを操作するためのCOMを取得しましょう。
ソリューションエクスプローラーの依存関係を右クリックし「プロジェクト参照の追加」をクリックします。
参照マネージャーが開くので、「Microsoft Office Object Library」と「Microsoft PowerPoint Object Library」を追加しましょう。
以下のようになれば成功です。
これでパワーポイントを操作する準備はできましたので、コードを見ていきましょう。
コード
まず以下のように参照を追加してください。
using PPT = Microsoft.Office.Interop.PowerPoint;
実際に操作するコードが以下です。
var ppt = new PPT.Application().Presentations.Open(
"test.pptx",
MsoTriState.msoFalse,
MsoTriState.msoFalse,
MsoTriState.msoFalse);
var baseIndex = 1;
var baseSlide = ppt.Slides[baseIndex];
baseSlide.Copy();
ppt.Slides.Paste(baseIndex + 1);
foreach (PPT.Shape shape in ppt.Slides[baseIndex + 1].Shapes)
{
if (shape.HasTextFrame != MsoTriState.msoTrue)
continue;
if (shape.TextFrame.HasText != MsoTriState.msoTrue)
continue;
var baseText = shape.TextFrame.TextRange.Text;
if (string.IsNullOrEmpty(baseText))
continue;
shape.TextFrame.TextRange.Text = "test";
}
ppt.Save();
ppt.Close();
コードの解説
1行目
パワーポイントを開きます。
ここではパワーポイントのファイル名を test.pptx としています。
7~8行目
1枚目のスライドを取得します。
10行目
8行目で取得したスライドをコピーします。
11行目
コピーしたスライドを貼り付けます。
これでコピペが完了しました。
13~26行目
複製したスライドの中身(オブジェクト)をループで1つずつ処理していきます。
テキスト形式のオブジェクトの場合のみ文言を「test」と書き換えます。
最後に & 関連書籍
以上になります。
分かりにくいところや、「もっとこうしてほしい」などのご意見がありましたら、ツイッターから連絡いただけると幸いです。
質問に関しても、お気軽にお問い合わせください。
余談ですが、インスタグラムを自動でいいねするコードなども公開しています。
興味があれば見てみてください。
以下は関連書籍です。
リンク
リンク
リンク
リンク
コメント