Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


20349 / 76732 ←次へ | 前へ→

【61804】Re:新しいウインドを開くのウインドウを閉じるときイベント
質問  ON  - 09/6/5(金) 16:17 -

引用なし
パスワード
   大変遅くなりました m(_ _)m

解説、添削ありがとうございます


>コントロールツールボックスではそうなるようです。
>色々問題のあるコントロールなので、昔ながらのフォームのボタンを使われたらどうでしょう。
普段、VBのツールバーを表示しているので、これを使用していました
フォームのコントロールはあまり使用したことはないです
ただ、こちらには、トグルボタンはありました
どうするか、もう少し検討してみます


>以下のかんじくらいにはなると思います。
コードのご提示ありがとうございます
全然、違いますね、1/4ぐらいになっているし・・・

Parentあまり使用したことはありません
また、自分の理解が足りていないことが原因で無駄が多いこと理解できました
ありがとうございました


>取りあえず、トグルボタンで動作、マウスAPI抜き(組み込んでも動作しました)
>コードは、下記で希望の操作かないました
は勘違いでした
別ブックを起動すると、マウス移動でのウインドウの切り替えは出来なくなりました

yoshiさんのコードにマウスのAPIを追加してみましたが
やはり、別ブックを起動すると、
マウス移動でのウインドウの切り替えは出来なくなりました

そこで、色々、StartSample、StopSampleを散りばめて記述してみましたが (*o*)\baki
うまく出来ませんでした

つらつら思うに、別ブックの起動を含めた制御を行うには
アプリケーションレベルでの制御が必要になると思い
理解が乏しくあまり使用したことがないのですが下記のクラスを使用してみました

------------------------------------------------------
'Class1

Option Explicit

Public WithEvents appevent As Application

Private Sub appevent_WindowActivate(ByVal Wb As Workbook, ByVal Wn As Window)
  
   'MsgBox ActiveWindow.Caption
   'MsgBox Parent.Caption
  
   If Mid(ActiveWindow.Caption, Len(ActiveWindow.Caption) - 1, 1) = ":" Then
    MsgBox ActiveWindow.Caption
   End If
  
End Sub


------------------------------------------------------
'Module1

Option Explicit

   Dim myobject As New Class1

   Sub Test()
     Set myobject.appevent = Application
   End Sub


Testを実行すると、複数ブック、複数ウインドウを開いて
マウスでブックを選んだとき、タスクバーで選択したときとか
タイトルバーのキャプションをメッセージ出来ました

>>この辺の処理、トラウマで、いつも、コードが動くように
>>訳もわからず改変していって??になってしまいます
ウインドウズの操作が苦手(いつも??)で闇雲コードとなっていましたが
これと、APIでHwndが扱えれば、かなりのことが出来そうな気がしてきました

気がしているだけですが・・・


ここまでの理解で下記してみましたが
他ブック選択後、2画面ブックにもどってマウスでウインドウの切り替えは出来ませんでした

Private Sub appevent_WindowActivate(ByVal Wb As Workbook, ByVal Wn As Window)
  
   'MsgBox ActiveWindow.Caption
   'MsgBox Parent.Caption
  
   If Mid(ActiveWindow.Caption, Len(ActiveWindow.Caption) - 1, 1) = ":" Then
    'MsgBox ActiveWindow.Caption
    mouse_monitore_Start
   Else
    mouse_monitore_Stop
    
   End If
  
End Sub


TimerProcが理解できていないためのような気もしますが
上記アプローチが悪いためかもしれません

アドバイス頂けるとうれしいです

よろしくお願いいたします
2 hits

【61498】新しいウインドを開くのウインドウを閉じるときイベント ON 09/5/13(水) 17:57 質問
【61504】Re:新しいウインドを開くのウインドウを閉... n 09/5/13(水) 22:40 発言
【61507】Re:新しいウインドを開くのウインドウを閉... yoshi 09/5/14(木) 2:26 お礼
【61515】Re:新しいウインドを開くのウインドウを閉... neptune 09/5/14(木) 10:19 発言
【61604】Re:新しいウインドを開くのウインドウを閉... ON 09/5/21(木) 16:18 お礼
【61615】Re:新しいウインドを開くのウインドウを閉... neptune 09/5/21(木) 22:31 回答
【61619】Re:新しいウインドを開くのウインドウを閉... n 09/5/22(金) 1:37 発言
【61624】Re:新しいウインドを開くのウインドウを閉... yoshi 09/5/22(金) 11:59 回答
【61690】Re:新しいウインドを開くのウインドウを閉... ON 09/5/27(水) 18:44 お礼
【61723】Re:新しいウインドを開くのウインドウを閉... ON 09/5/29(金) 21:15 お礼
【61737】Re:新しいウインドを開くのウインドウを閉... yoshi 09/5/30(土) 16:19 回答
【61804】Re:新しいウインドを開くのウインドウを閉... ON 09/6/5(金) 16:17 質問
【61808】Re:新しいウインドを開くのウインドウを閉... yoshi 09/6/5(金) 18:17 回答
【61809】Re:新しいウインドを開くのウインドウを閉... ON 09/6/5(金) 19:10 質問
【61817】Re:新しいウインドを開くのウインドウを閉... yoshi 09/6/6(土) 16:54 回答
【61930】Re:新しいウインドを開くのウインドウを閉... ON 09/6/12(金) 16:36 お礼
【61931】Re:新しいウインドを開くのウインドウを閉... ON 09/6/12(金) 16:37 発言
【61932】Re:新しいウインドを開くのウインドウを閉... ON 09/6/12(金) 16:39 発言

20349 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free