[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『フォルダ内のすべてのpdfファイルの文書プロパティをExcelシートのデータを参照し一括書き換え』(rieko)
初心者です。
下記のコードを使用して、フォルダ内のPDFファイル「文書のプロパティ」の「タイトル」「サブタイトル」「キーワード」へ
(春、季節、さくら)を書き込むことができました。
やりたいことは、
下記シートのファイル名と一致するB、C、D列のデータをフォルダ内のPDFファイルそれぞれの文書プロパティへ書き込みたいです。
ファイルが1000個ほどあり、一括で書き込めるようにしたいです。よろしくお願いいたします。
(シート1)
A B C D
ファイル名 本タイトル サブタイトル キーワード
春.pdf 春 季節 さくら
夏.pdf 夏 季節 暑い
りんご.pdf りんご 果物 おいしい
・ ・ ・ ・
・ ・ ・ ・
Sub フォルダ内PDFのタイトル作成者などを書き換える()
'カレントドライブ・フォルダを変更
ChDrive ActiveWorkbook.Path
ChDir ActiveWorkbook.Path
myPath = ActiveWorkbook.Path & "\"
myFname = Dir(myPath & "*.pdf")
Do While myFname <> ""
Set qq = CreateObject("AcroExch.PDDoc") b = qq.Open(myPath & myFname) b = qq.SetInfo("Title", Range("B2")) b = qq.SetInfo("Subject", Range("C2")) b = qq.SetInfo("Keywords", Range("D3"))
'... 33 = PDSaveFull (1) OR PDSaveCollectGarbage (32) b = qq.Save(33, myPath & myFname) b = qq.Close
myFname = Dir() Loop
MsgBox "終了しました"
End Sub
< 使用 Excel:unknown、使用 OS:Windows10 >
まず、CreateObject("Scripting.Dictionary") を使って、辞書オブジェクトを宣言します。そして、A列のファイル名をキーに、行位置をアイテムとして、辞書追加しておきます。
あとは、辞書にmyFnameがあるならば、その値の示す行のセル情報を使い、辞書に無ければ読み飛ばすと良いでしょう。
(???) 2017/08/17(木) 16:11
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.