
いつもお世話になります
ウェブで調べて下記のステートメントでフォームを常に最前面に出したいのですが
フォーム内でブックを開くと隠れてしまいます
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const HWND_TOPMOST As Long = -1
Private Const SWP_NOSIZE As Long = &H1&
Private Const SWP_NOMOVE As Long = &H2&
Private Sub UserForm_Activate()
Call SetWindowPos(GetForegroundWindow, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE)
いろいろ試しましたが、良く分かりません
何か良い方法が有るのでしょうか?
教えて頂かれば幸いです、よろしくお願いいたします
No.1ベストアンサー
- 回答日時:
こんにちは。
試してみた感じではよさそうですが、そのコードでひとつ抜けているのは、
UserForm を ShowModal をFalse にしておくことではないでしょうか?そうしないと、Workbook から離れないことになってしまうと思います。
なお、別の質問でApplication.Input の位置については、出来ないということで、Close されてしまったようですが、あれはSetWindowsHookEx を使えば可能だと思いますね。
ありがとうございます
そんなものがあるとは知りませんでした
別の質問の件についてもお答えを頂き感謝しています
ちょっと難しそうですがトライしてみます
また、よろしくお願いいたします
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルVBAのフォームを最前面にする方法を教えてください。
Visual Basic(VBA)
-
Vba UserFormを前面に出す方法を教えてください
Visual Basic(VBA)
-
VBA、UserFormを前面に出力してから処理後にももう一度前面に出したい
Visual Basic(VBA)
-
-
4
Vba Userformを前面に出すについて
Access(アクセス)
-
5
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
6
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
7
Excel VBA:フォーム←→セルのアクティブ切り替え
Excel(エクセル)
-
8
[VBA] UserForm を Excel の Window の前面に表示させない方法
その他(プログラミング・Web制作)
-
9
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
10
Excel ユーザーフォームをモードレスで表示後
Visual Basic(VBA)
-
11
フレーム内に移動したい
Visual Basic(VBA)
-
12
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
13
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
14
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
15
エクセルマクロで、別のブックが開いているかを判定したいのですが。
その他(Microsoft Office)
-
16
メッセージボックスを前面に表示させるには?
Visual Basic(VBA)
-
17
VBSでExcelのUserFormをエクスプローラの前面に出したい
Visual Basic(VBA)
-
18
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
19
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
20
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Googleフォーム・複数人の申し...
-
C# 別なフォームへ値を渡す (...
-
リストボックスの選択解除
-
メッセージボックスの背景色
-
VC2008 C++/CLIでの静的変数
-
サブフォームの新規レコードに...
-
エクセルでのフォーム
-
VBAにてメッセージボックスを最...
-
Access2010でサブフォームに新...
-
VC++のコーディングについて
-
VBプログラムの終了
-
Accessの出荷管理DBで製造番号...
-
VBA リストボックスをダブルク...
-
ASP.NETとC#でWebフォームを呼...
-
子フォームから親フォームのオ...
-
VBAでループ内で使う変数名を可...
-
VBA エンターキーでイベントに...
-
エクセルで、日付を入力すると...
-
エクセルVBAで、MsgBox やInput...
-
【Excel VBA】マクロボタンを表...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAにてメッセージボックスを最...
-
VBA リストボックスをダブルク...
-
Accessでフォームから別フォー...
-
Googleフォーム・複数人の申し...
-
PDFフォームに本日の日付を自動...
-
サブフォームの新規レコードに...
-
ユーザーフォーム上にアイコン...
-
リストボックスの選択解除
-
アクセスVBA フォームのス...
-
VBプログラムの終了
-
Access 無操作の場合、自動で閉...
-
メインフォームからサブフォー...
-
フォーム上の全てのコントロー...
-
ExcelVBAでフォーム内でブック...
-
ExcelVBAでユーザーフォーム内...
-
サブフォームのイベント取得
-
dbOpenTableとdbOpenDynaset
-
VB.net(VB)で、フォームにExcel...
-
C# 別なフォームへ値を渡す (...
-
メッセージボックスの背景色
おすすめ情報