いつもお世話になります
今、UserFormからExcelシートのサイズが変更できなくて悩んでいます。
本来のプログラムはUserFormからInputBoxで最小にしてあるシートのデータを
参照するときにそのシートのサイズを最大にしたいのですが、上手くできません。
下記のサンプルプログラムは質問用に作りました。
UserForm1を呼び出す前にシートのサイズを最小にして、
UserFirm1で最大にしているだけですが、出来ていません
(Sample)
Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPtr
Declare PtrSafe Function ShowWindow Lib "user32" (ByVal hwnd As LongPtr, ByVal nCmdShow As Long) As Boolean
Declare PtrSafe Sub SetForegroundWindow Lib "user32" (ByVal hwnd As LongPtr)
Sub test()
'...ユーザフォームのクラス名を指定
FormClassName = "ThunderDFrame"
'...ウィンドウのハンドルを取得
hwnd = FindWindow(FormClassName, vbNullString)
'...表示(最小化されている場合は、これがないと表示状態になりません)
check = ShowWindow(hwnd, 3)
'...最前面表示
SetForegroundWindow hwnd
VBA.AppActivate Excel.Application.Caption
Application.WindowState = xlMinimized
UserForm1.Show
End Sub
(UserForm1)
Private Sub UserForm_Activate()
UserForm1.Top = 100
UserForm1.Left = 600
VBA.AppActivate Excel.Application.Caption
Application.WindowState = xlMaximized
End Sub
もし良い方法があれば教えてください
以上、よろしくお願い申しあげます
No.1ベストアンサー
- 回答日時:
こんばんは
状況がイマイチよくわかっていませんけれど・・・
>そのシートのサイズを最大にしたいのですが~~
シートと言うよりもエクセルのウィンドウ表示を最大化すれば良いのですよね?
APIを使っているようですが、VBAを記述してあるブックを最大化すれば良いのなら、
ThisWorkbook.Windows(1).WindowState = xlMaximized
だけでできませんか?
(当方の環境では、ウィンドウを最小化した状態からでも、上記で最大化表示できます)
いつもお世話になります
実はもう一つAutoCadの画面があって
AutoCadの画面の上にUserformが表示して、WorkSheetは最小表示に
しています
この時にInputBoxでWorksheetのデータを参照するとき、
WorkSheetを最大にしてWorkSheetをコントロールしたいと思っています
画面の順番は
①UserForm-AutoCad-Worksheet(最小)
(InputBox操作)
②UserForm-WorkSheet-AutoCad
になります
すみません、ながながと
ご教授頂いたステートメントで試してみます
まずはお礼まで
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
VBA コードどこがおかしいですか?
Visual Basic(VBA)
-
Excel VBA 選択範囲の罫線色の変更プロージャの動作速度の改善について
Visual Basic(VBA)
-
VBAコードのインデント表示
Visual Basic(VBA)
-
-
4
Vba ファイル書き込み時に書き込みエラーを回避する方法を教えてください
Visual Basic(VBA)
-
5
VBAの間違い教えて下さい
Visual Basic(VBA)
-
6
VBA初心者です。次のVBAコードで、17行目を削除したいのですがうまく動きません 改善策を教えてく
Visual Basic(VBA)
-
7
ExcelVBAマクロで実行した時の疑問
Visual Basic(VBA)
-
8
Excel-VBAのmsgBox()の不思議
Visual Basic(VBA)
-
9
エクセルVBAにて =A1=B1とすれば A1とB1のセル内容が一緒だった場合 TRUE 違っていれ
Visual Basic(VBA)
-
10
Excel VBA 定義されたプロージャ名、関数名の取得
Visual Basic(VBA)
-
11
VBAに詳しい方教えてください。
Visual Basic(VBA)
-
12
Vba 実数および実数タイプの変数について教えてください
Visual Basic(VBA)
-
13
VBA指定行削除
Visual Basic(VBA)
-
14
VBAなくなるの?
Visual Basic(VBA)
-
15
Excelを無料で使うには? パソコン購入して、マイクロソフトに登録して そのままExcelがデスク
Excel(エクセル)
-
16
IF文、条件分岐の整理方法
Visual Basic(VBA)
-
17
Excel_VBAについて質疑です。(for~next)
Visual Basic(VBA)
-
18
エクセル タブの下のメニューを選択 実行するコード
Visual Basic(VBA)
-
19
Sub 要具ライフ() ActiveSheet.Cells.Find(what:=TOPゴム")."
Visual Basic(VBA)
-
20
VBA 複数条件の分岐処理の上手な方法
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【ExcelVBA】全シートのセルの...
-
特定の文字を含むシートだけマ...
-
ブック名、シート名を他のモジ...
-
ユーザーフォームに入力したデ...
-
別のシートから値を取得するとき
-
XL:BeforeDoubleClickが動かない
-
同じ作業を複数のシートに実行...
-
Excelマクロのエラーを解決した...
-
セルの値によって、シート見出...
-
excelのマクロで該当処理できな...
-
実行時エラー'1004': WorkSheet...
-
Worksheet_Changeの内容を標準...
-
エクセルVBA Ifでシート名が合...
-
Excel VBA リンク先をシート...
-
VBAで指定シート以外の選択
-
VBA 存在しないシートを選...
-
ExcelVBA:複数の特定のグラフ...
-
VBAの授業でナンプレを制作して...
-
Excel VBA 複数行を数の分だけ...
-
【Excel VBA】Worksheets().Act...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelのマクロで該当処理できな...
-
特定の文字を含むシートだけマ...
-
ユーザーフォームに入力したデ...
-
【ExcelVBA】全シートのセルの...
-
別のシートから値を取得するとき
-
実行時エラー'1004': WorkSheet...
-
Excelマクロのエラーを解決した...
-
XL:BeforeDoubleClickが動かない
-
ブック名、シート名を他のモジ...
-
同じ作業を複数のシートに実行...
-
エクセルのシート名変更で重複...
-
VBAで指定シート以外の選択
-
VBAで同じシート名のコピー時は...
-
シートが保護されている状態で...
-
ExcelのVBAのマクロで他のシー...
-
実行時エラー1004「Select メソ...
-
IFステートの中にWithステート...
-
Worksheet_Changeの内容を標準...
-
【Excel VBA】Worksheets().Act...
-
VBA 存在しないシートを選...
おすすめ情報