Excel VBA質問箱 IV

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

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


7489 / 13645 ツリー ←次へ | 前へ→

【38827】ユーザーフォームが隠れないようにしたい 西谷 さくら 06/6/11(日) 19:37 質問[未読]
【38828】Re:ユーザーフォームが隠れないようにしたい Kein 06/6/11(日) 19:52 発言[未読]
【38863】Re:ユーザーフォームが隠れないようにしたい 西谷 さくら 06/6/12(月) 22:51 お礼[未読]
【38864】Re:ユーザーフォームが隠れないようにし... 漂流民 06/6/12(月) 23:24 発言[未読]
【38890】Re:ユーザーフォームが隠れないようにし... 西谷 さくら 06/6/13(火) 19:09 お礼[未読]

【38827】ユーザーフォームが隠れないようにしたい
質問  西谷 さくら  - 06/6/11(日) 19:37 -

引用なし
パスワード
   エクセルからUserForm1 を全画面表示し、そこのボタンを押すと小さなUserForm2が出てきてパレットのような役割をします。UserForm2 を見ながらUserForm1上のボタン類を操作したいのですが、さわったとたんにUserForm2が消えて(下に隠れて)しまいます。両方とも vbModeless で干渉しないと思っていたのですが。フォームのZorderもなさそうだし・・・
環境:WindowsXP,エクセル2000、VBA

【38828】Re:ユーザーフォームが隠れないようにし...
発言  Kein  - 06/6/11(日) 19:52 -

引用なし
パスワード
   ↓こっちはどうなったの ?
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=38813;id=excel

【38863】Re:ユーザーフォームが隠れないようにし...
お礼  西谷 さくら  - 06/6/12(月) 22:51 -

引用なし
パスワード
   ▼Kein さん:
すみません。さっき、お礼を出しておいたのですが、フォーム上ではOnAction は動きませんでした。わたしの勘違いかな?シート上では動きました(多謝)。

【38864】Re:ユーザーフォームが隠れないようにし...
発言  漂流民  - 06/6/12(月) 23:24 -

引用なし
パスワード
   ▼西谷 さくら さん:
>エクセルからUserForm1 を全画面表示し、そこのボタンを押すと小さなUserForm2が出てきてパレットのような役割をします。UserForm2 を見ながらUserForm1上のボタン類を操作したいのですが、さわったとたんにUserForm2が消えて(下に隠れて)しまいます。両方とも vbModeless で干渉しないと思っていたのですが。フォームのZorderもなさそうだし・・・
>環境:WindowsXP,エクセル2000、VBA

[#38813]の質問にレスを入れられたようなので、
私なりの回答です。

標準モジュール
Public Declare Function GetActiveWindow Lib "user32" () As Long
Public Declare Function SetWindowPos Lib "user32.dll" (ByVal hWnd As Long, ByVal st As Long, _
    ByVal x As Long, ByVal y As Long, ByVal w As Long, ByVal h As Long, ByVal uFlags As Long) As Long

Sub test()
  UserForm1.Show vbModeless
End Sub

ユーザーフォーム1
Private Sub CommandButton1_Click()
  UserForm2.Show vbModeless
End Sub

ユーザーフォーム2
Private Sub UserForm_Activate()
  Dim hwu As Long
  hwu = GetActiveWindow()
  Call SetWindowPos(hwu, -1, 0, 0, 0, 0, 3)
End Sub

【38890】Re:ユーザーフォームが隠れないようにし...
お礼  西谷 さくら  - 06/6/13(火) 19:09 -

引用なし
パスワード
   ▼漂流民 さん:
できちゃいました。ありがとうございました。Declare Function の類は、
GetSystemMetrics ぐらいしか使ったことがなかったのですが、やはり
もっと勉強しないとダメですね!
ありがとうございます。

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