TOP > AcroExch.Time > *
説明
AcroTimeオブジェクトからのミリ秒を得るか、又は設定します。
形式
[get/set] Short
設定又は戻り値
- 0 から999 の数。0 は0 ミリ秒です。999 は999 ミリ秒です。1000ミリ秒(=1秒)はありません。
動作するバージョン
| Acrobat | 動作 | 備考 |
|---|---|---|
| 4 | ― | Acrobat 4.0 ※Windows 98SE + Excel 2000 |
| 5 | ― | Acrobat 5.0.5 |
| 6 | ― | Acrobat 6.0.3 Pro |
| 7 | ― | Acrobat 7.0.9 Pro Acrobat 7.1.4 Pro |
| 8 | OK | Acrobat 8.1.2 Pro |
| 9 | ― | Acrobat 9.3.2 Extended |
| 10 | ― | Acrobat X (10.1.8) Extended |
| 11 | ― | Acrobat XI (11.0.04) Extended |
- OK:動作します。
- NO:動作しない。 戻り値が0を返します。
- -:未確認。
サンプル:ExcelのVBA
PDFファイルにあるテキスト注釈の日付はミリ秒は0 にリセットします。
- 事前に参照設定をします。
- F8キーでステップ実行しながら動作確認します。
001 Sub AcroExch_Time_Millisecond()
002
003 Debug.Print "AcroExch_Time_Millisecond:" & Now
004 Dim objAcroApp As New Acrobat.AcroApp
005 Dim objAcroAVDoc As New Acrobat.AcroAVDoc
006 Dim objAcroAVPageView As Acrobat.AcroAVPageView
007 Dim objAcroPDDoc As Acrobat.AcroPDDoc
008 Dim objAcroPDPage As Acrobat.AcroPDPage
009 Dim objAcroPDAnnot As Acrobat.AcroPDAnnot
010 Dim objAcroTime As New Acrobat.AcroTime
011 Dim objRect As Acrobat.AcroRect
012 Dim lRet As Long '戻り値
013 Dim lPagesCnt As Long 'ページ数
014 Dim lAnnotsCnt As Long '注釈数
015 Dim i As Long '添え字
016 Dim j As Long '添え字
017 Dim lTextCnt As Long '件数
018
019 lTextCnt = 0
020 'Acrobatを起動表示する
021 lRet = objAcroApp.Show '(TEST用)
022 'PDFドキュメントを開いて表示する。
023 lRet = objAcroAVDoc.Open("E:\Test01.pdf", "")
024 Set objAcroPDDoc = objAcroAVDoc.GetPDDoc()
025 Set objAcroAVPageView = objAcroAVDoc.GetAVPageView()
026 'PDFドキュメントのページ数を得る
027 lPagesCnt = objAcroPDDoc.GetNumPages() - 1
028 For i = 0 To lPagesCnt
029 Set objAcroPDPage = objAcroPDDoc.AcquirePage(i)
030 lRet = objAcroAVPageView.Goto(i) '(TEST用)
031 'ページに存在する注釈数を得る ★注意①
032 lAnnotsCnt = objAcroPDPage.GetNumAnnots() - 1
033 For j = 0 To lAnnotsCnt
034 Set objAcroPDAnnot = objAcroPDPage.GetAnnot(j)
035 'Text注釈か?
036 If objAcroPDAnnot.GetSubtype = "Text" Then
037 Debug.Print "Text=" & objAcroPDAnnot.GetContents
038 'ミリ秒の更新
039 With objAcroTime
040 .millisecond = 0
041 End With
042 lRet = objAcroPDAnnot.SetDate(objAcroTime)
043 lTextCnt = lTextCnt + 1
044 End If
045 Next j
046 Next i
047 Debug.Print "更新件数=" & lTextCnt
048
049 'PDFファイルを保存して閉じる
050 lRet = objAcroAVDoc.Close(0)
051
052 'Acrobatを閉じる
053 lRet = objAcroApp.Hide
054 lRet = objAcroApp.Exit
055
056 'オブジェクトを強制解放する
057 Set objAcroTime = Nothing
058 Set objAcroAVDoc = Nothing
059 Set objAcroPDAnnot = Nothing
060 Set objAcroPDPage = Nothing
061 Set objAcroAVPageView = Nothing
062 Set objAcroPDDoc = Nothing
063 Set objAcroApp = Nothing
064
065 End Sub
実行結果
TEST_Time_Millisecond:2008/08/02 21:29:44
Text=1/2 これはTest01.PDFのテスト用の1ページ目のテキスト注釈です。(1)
Text=2/2 これはTest01.PDFのテスト用の1ページ目のテキスト注釈です。
Text=テスト用の注釈です。2ページ目です。
更新件数=3
補足
- 「注意①」のGetNumAnnots メソッドは正常な値を返さない場合があります。
- 実用面で考えると、Millisecondの値は常に0になっているみたいなので、Millisecondの実用価値はあまり無いと思われる。
Adobe Web 解説
OLE Automation / AcroExch.Time / Millisecond (公式サイト・英語)
動作確認環境
- WindowsXP Pro(+ SP3) +
Acrobat 8.1.2 Pro + Office 2003 + MicrosoftUpdate
< 戻る >