Word2007限定:ファイル読込直後にShift+F5を効かせる
2011/07/18 : 間違えましたすいません。詳細は下記追記にて。
結論:以下の VBA コードを Normal.dotm に追加すれば OK。
(a) 標準モジュール ( 「Module1」など )
Sub AutoExec()
KeyBindings.Add _
KeyCode:=BuildKeyCode(wdKeyShift, wdKeyF5) _
, KeyCategory:=wdKeyCategoryMacro _
, Command:="JumpShiftF5_2007"
End Sub
Sub JumpShiftF5_2007()
If ActiveDocument.Bookmarks.Exists("_GoBack") Then
Selection.GoTo What:=wdGoToBookmark, Name:="_GoBack"
ActiveDocument.Bookmarks("_GoBack").Delete
Else
Application.GoBack
End If
End Sub
(b) クラスモジュール ( 「clsGoBack」 )
Public WithEvents appGoBack As Word.Application
Private Sub appGoBack_DocumentBeforeSave( _
ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
If Application.Documents.Count = 0 Then Exit Sub
If ActiveDocument.Bookmarks.Exists(bmGoBack) Then
ActiveDocument.Bookmarks(bmGoBack).Delete
End If
ActiveDocument.Bookmarks.Add _
Name:=bmGoBack _
, Range:=ActiveDocument.ActiveWindow.Selection
End Sub
- Word2007 を起動します。
- Alt+F11 で、VBAエディタを起動します。
- プロジェクトエクスプローラ ( Ctrl+Rで表示されます ) から「Normal」を右クリックし、[挿入]-[標準モジュール] を選択します。
「Normal」に何も手を入れていなければ、[Normal]-[標準モジュール] の下に、「Module1」が追加されます。 - 3. で作成した「Module1」をダブルクリックします。
「Module1」が開き、コードエディタに表示されます。 - 上述のコード (a) をコピーして、「Module1」のコードエディタに貼り付けます。
- プロジェクトエクスプローラから「Normal」を右クリックし、[挿入]-[クラスモジュール] を選択します。
「Normal」に何も手を入れていなければ、[Normal]-[標準モジュール] の下に、「Class1」が追加されます。
- 6. で作成した「Class1」をダブルクリックします。
「Class1」が開き、コードエディタに表示されます。
- プロパティウィンドウ ( F4 で表示されます ) から、「(オブジェクト名)」を「clsGoBack」に変更します。
- 上述のコード (b) をコピーして、「clsGoBack」のコードエディタに貼り付けます。
- Word2007のウィンドウに戻って、終了します。
5.、9. で貼り付けた内容は自動的に保存されますので、特に保存操作をしなくても大丈夫です。



