- ベストアンサー
ExcelのVBAで制御する画面の大きさを比率で制御出来ますか?
はじめまして。初心者なんで、教えて下さい。 通常、VBAでWindowの大きさを制御する場合、WidthやHeightで具体的なサイズを指定すると思いますが、 それぞれのユーザーの画面の大きさ(例えば、XGAやSVGA)で横幅の80%で表示するということは可能なのでしょうか? ぜひ、教えて下さい。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
興味があったので試してみました。 Dim ScreenSize As Long Excel.Windows.Application.DisplayFullScreen = True ScreenSize = Excel.Windows.Application.Width Excel.Windows.Application.DisplayFullScreen = False Excel.Windows.Application.Application.Width = Int(ScreenSize * 0.5) とりあえずこれでできました。 ウィンドウズの画面サイズをとる方法は、ほかにもあるかもしれませんが、ちょっと見つけられなかったので、「一度エクセルを最大化」⇒「サイズを測って」⇒「最大化解除」⇒「ウィンドウサイズを変更」という手順を踏んでいます。 ちなみに、Excel2000で試してみました。
その他の回答 (2)
補足というか訂正です。 すみません、提示したソース、50%になっています。自分でサイズ変更をいろいろ試した途中のものを貼り付けてしまいました。
試した限りでは、 Sub winset() Dim wrkw As Double, wrkh As Double With Application .WindowState = xlMaximized wrkw = .Width wrkh = .Height .WindowState = xlNormal .Width = wrkw * 0.8 .Height = wrkh * 0.8 End With End Sub でうまくいくんじゃないかと思います。
お礼
回答、どうもありがとうございます。 ちゃんと出来ました。非常に参考になりました。 また、困っている時はよろしくお願いいたします。
お礼
回答、どうもありがとうございます。 ちゃんと出来ました。非常に参考になりました。 また、困っている時はよろしくお願いいたします。