カスタム検索
Office関連

起動中の他のアプリケーションを操作する(Word VBA)

WordのTaskオブジェクトを操作することで起動中の他のアプリケーションを終了したり、ウィンドウにメッセージを送ったりすることができます。
下記例ではメモ帳を起動し、ウィンドウサイズの変更と終了を行います。

 

Option Explicit

Public Sub Sample()
  Const WM_CLOSE = &H10
  
  Shell "notepad.exe", vbNormalFocus 'メモ帳起動
  If Application.Tasks.Exists("メモ帳") Then
    With Application.Tasks("メモ帳")
      MsgBox "「メモ帳」のウィンドウを最大化します。", vbInformation + vbSystemModal
      .WindowState = wdWindowStateMaximize
      MsgBox "「メモ帳」を終了します。", vbInformation + vbSystemModal
      .SendWindowMessage WM_CLOSE, 0&, 0& '敢えてSendWindowMessage
      '.Close
    End With
  End If
End Sub