VBA Generic code

Wordファイルの表示倍率を一括で変更選択したフォルダが対象

選択したフォルダ内の、全てのWordファイルの表示倍率を、一括で任意の倍率に変更するサンプルコードです。

Wordのコード記述場所

WordでVBAコードを記述する場合の操作は次の通り。
【1】Wordを起ち上げ、[Alt]+[F11]を押す。VBEが起ち上がる。
【2】左上部の「プロジェクト Project」の任意の場所で「右クリック」→「挿入」→「標準モジュール」

挿入された標準モジュールにコードを記入、又はサンプルコードを貼り付ける。

サンプルコード

Sub All_Documents_ZoomChange() 'メイン
    Dim strDirPath As String
    Dim strExistDir As String
    strDirPath = Search_Directory()
    If Len(strDirPath) = 0 Then Exit Sub
    strExistDir = IsExistence_Directory(strDirPath)
    If Len(strExistDir) = 0 Then Exit Sub
    Call Search_Documents(strDirPath)
End Sub

Private Function Search_Directory() As String 'フォルダの選択 With Application.FileDialog(msoFileDialogFolderPicker) If .Show = True Then Search_Directory = .SelectedItems(1) End With End Function
Private Function IsExistence_Directory(ByVal DirPath As String) As String 'フォルダ存在確認 IsExistence_Directory = Dir(DirPath, vbDirectory) End Function
Private Sub Search_Documents(ByVal strPath As String) '各ファイルの倍率変更 Dim strTarget As String Dim strDirPath As String Dim varZoom As Variant strPath = strPath & Application.PathSeparator strTarget = Dir(strPath & "*.doc?") If strTarget = "" Then Exit Sub Do varZoom = InputBox("倍率を指定して下さい(10~500)", , 100) If Len(varZoom) = 0 Then Exit Sub Loop Until IsNumeric(varZoom) varZoom = CLng(varZoom) If varZoom < 10 Or 500 < varZoom Then MsgBox "指定できる数値は10~500の間です", vbExclamation, "中止します" Exit Sub End If Do With Word.Documents.Open(strPath & strTarget) If ActiveWindow.View.Zoom <> varZoom Then ActiveWindow.View.Zoom = varZoom .Saved = False 'ここがポイント .Save End If .Close End With strTarget = Dir() Loop Until strTarget = "" strTarget = Dir("") End Sub
ページトップへ戻る
Copyright(C) 2009- 坂江 保 All Rights Reserved.