Office関連

パスワードが設定されたファイルを開くPowerPointマクロ

WordやExcelと違って、PowerPointの場合はOpenメソッドでファイルを開く際にパスワードを指定するオプションがありません。

PowerPointのマクロで、パスワードが設定されたファイルを開きたいときにどうするかというと、下記コードのようにファイルパスの後に「:」(コロン)を2つつけてパスワードを繋げることで、ファイルを開くことができるようになります。

Option Explicit

Public Sub Sample()
  Const PW_Read As String = "read" '読み取りパスワード
  Const PW_Write As String = "write" '書き込みパスワード
  
  '読み取りパスワードが設定されたファイルを開くとき
  Application.Presentations.Open "C:\Files\ReadPW.pptx::" & PW_Read
  
  '書き込みパスワードが設定されたファイルを開くとき
  Application.Presentations.Open "C:\Files\WritePW.pptx::::" & PW_Write
  
  '両方のパスワードが設定されたファイルを開くとき
  Application.Presentations.Open "C:\Files\PW.pptx::" & PW_Read & "::" & PW_Write
End Sub

■ 参考Webページ

・PowerPoint 2003 post-Service パック 2 の修正プログラム パッケージの説明: 2006 年 3 月 21 日
http://support.microsoft.com/kb/916154/ja

また、2010以降のバージョンの場合は、ProtectedViewWindowsオブジェクトのOpenメソッドであれば「ReadPassword」オプションでパスワードを指定してファイルを開くことができます。

Option Explicit

Public Sub Sample2()
  Application.ProtectedViewWindows.Open "C:\Files\ReadPW.pptx", "read"
End Sub

ただ、不思議なことに下記コードのようにEditメソッドを実行すると、ファイルが開かれると同時に勝手にファイルが閉じてしまいます。
同じプロシージャーを再度実行するとファイルを開いて編集できるようになるのですが、正直よく分からない挙動です。

環境によるものなのかPowerPointの仕様によるものなのかは分かりませんが、とりあえず私の環境(Windows 7 + PowerPoint 2010)では上記のような挙動です。

Option Explicit

Public Sub Sample3()
  Application.ProtectedViewWindows.Open("C:\Files\ReadPW.pptx", "read").Edit
End Sub

[Office用アプリ]Random Data Generator前のページ

目次を更新するWordマクロ次のページ

関連記事

  1. アイコン一覧

    Office 365アイコン(imageMso)一覧(D)

    Office 365のデスクトップ版Officeアプリケーション(Wo…

  2. Office関連

    Office 2013 オンラインヘルプのリンクを集めてみました。

    新機能を把握するためにはヘルプを見るのが一番早い、というわけでOffi…

  3. Office関連

    VBA Word 97/98ハンドブックを購入しました。

    ブックオフにあった「VBA Word 97/98ハンドブッ…

  4. Office関連

    Excel 2016でマップグラフを作成する。

    12月6日、Office Insider向けに、Office 2016…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

Translate

最近の記事

アーカイブ

PAGE TOP