アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excel自体のウィンドウサイズ変更を、イベントで取得したいです。

状況としては、
・Excel2010を使用
・ファイルオープン時、ウィンドウを分割して横に並べるようにvbaコーディング済み
・分割されている個々のウィンドウサイズ変更はwindowresizeイベントで取得できるが、Excelアプリケーション自体のサイズ変更を取得できていない(Excel最大化時など)

希望は、
「Excelアプリケーション自体のウィンドウサイズが変わった場合、これをイベントで検知して、分割表示している二つのウィンドウサイズを調整する」
です。

宜しくお願いします。

A 回答 (1件)

教科書的に簡単に書くと以下の通りですが、今ひとつ、抜けがあるような気がしてなりません。

Class で行ったほうが強固です。

以下は、Workbook イベント側を、もうひとつ加えたほうが良いかもしれません。何度か試してみてください。

'//ThisWorkbook モジュール

Private WithEvents xlApp As Excel.Application
Private Sub Workbook_Open()
Set xlApp = ThisWorkbook.Application
End Sub


Private Sub xlApp_WindowResize(ByVal Wb As Workbook, ByVal Wn As Window)
Dim Stts As String
  If Wb Is ThisWorkbook Then
  Select Case Wn.WindowState
   Case xlNormal: Stts = "Nomal"
   Case xlMinimized: Stts = "Minimized"
   Case xlMaximized: Stts = "Maximize"
  End Select
   MsgBox Stts, vbInformation
  End If
End Sub
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!