• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAでディスプレイの設定変更)

VBAでディスプレイの設定変更

このQ&Aのポイント
  • Accessで作成した業務用プログラムの表示倍率をVBAで変更する方法について
  • Windows10(32bit)のタブレットで利用する業務用プログラムの表示倍率をデフォルトの150%に戻す方法について
  • 業務用プログラムを使用する際に、VBAを利用してディスプレイの表示倍率を一時的に変更することはできるか

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

そのAccessアプリが起動(アクティブ)になるたびに切り替えるよりも その環境に合わせてフォームの拡大/縮小をユーザーさんにやってもらえば 設定作業は一度で済むと思いますがいかが? 個人的にOSの設定はなるべく変えずにAccessアプリ内で完結する方がベター だと考えています。 hatenaさんの フォーム上のコントロールのサイズを拡大/縮小する関数 http://hatenachips.blog34.fc2.com/blog-entry-346.html サンプルファイルも置いてくれていますので検証しやすいかと。 添付図はhatenaさんのコードを流用したものではありませんが オリジナルサイズと20%縮小したものです。 hatenaさんのコードの方が簡潔でエレガントです。 私の考えたのはサブフォームまでしか対応していませんし長いのですが せっかく考えたので使っています。。。

fmxBeem
質問者

お礼

ご回答ありがとうございます。 なるほど、解像度ではなくフォームそのものを操作することは考えていませんでした。これなら私の力でもなんとかなりそうです。既存のプログラムにのせて運用試験してみたいと思います。参考リンクまで貼っていただいてありがとうございましたm(_ _)m

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • hahaha86
  • ベストアンサー率14% (82/576)
回答No.1

この頃組んでないので わからんが APIを呼び出せば 何でもできるよ APIの呼び出し方 http://lcl.web5.jp/prog/excel_vba/windows_api.html APIの詳細はググって ウィンドウサイズを求めれできると思う

fmxBeem
質問者

お礼

ご回答ありがとうございます。 API、調べてみたのですが (´・ω・`)? ←こんな感じです 標準モジュールに↓これを記述してどうにかするまでは理解できたのですが。 Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, Rectangle As RECT) As Long その前に解像度とスケーリングの違いがわかっていませんでした(^_^;)

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • ウインドウのサイズ変更

    すみません、VB初心者です。 Accsee VBAで作られたプログラムを修正しています。 今、ウインドウのサイズが最大化されているようなので、 サイズを変更したいのですが、 Form_Open()のところで、 DoCmd.MoveSize()をCallしてサイズを指定しているのですが、 も最大化されたままなのです。他に何か設定があるのでしょうか。 画面としてはフォームにさらにサブフォームを表示していて(意味わかりますか?) フォームも元から作ってあってほとんど修正はしていません。 よろしくお願い致します。

  • デュアルディスプレイの設定(画面表示サイズ)について

    DELL inspiron・530sを使用しています。 元々、 BenQ G2220HD(22インチ)のディスプレイを使用していましたが、そこに DELL S2409W(24インチ) を増設しディスプレイを2つにしました。 ディスプレイのサイズが異なるためか、DELL S2409W(24インチ)のディスプレイの表示が、22インチサイズにしかならず、フルスクリーンで表示されません。 ちなみにグラフィックアタプタは ATI Radeon HD 3450を使用しています。 基本的なことかもしれませんが、どなたか設定の方法をお知らせください。

  • Adobe Reader xi 倍率設定に関して

    Adobe Reader xi 倍率設定に関してですが、デフォルトで204%の表示倍率となり、いちいち変更するのが大変です。  Adobe Reader xiでは、 http://www.ilovex.co.jp/Division/PMD/2006/04/pdf … に書かれているような開き方の設定コマンドが見当たりません。 どこでデフォルトの表示倍率を変えるのでしょうか???

  • Access VBA 条件付き書式設定

    フォームのフィールドの「条件付き書式設定」について 条件式にフォームのVBAコード上で使用している変数を利用する記述の方法を教えて下さい。

  • ディスプレイの省電力設定

    液晶のディスプレイとWindowsXPのパソコンを使用しています。 会社で使用しているため、液晶はずっと表示させたままにしたいと思っています。 そのためにWindowsXPの省電力設定で「モニターの電源を切る」を「なし」に設定しているのですが、しばらくすると(時間はわかりません。すいません)液晶の電源ランプがオレンジになっておりマウスなどを動かすと、戻ります。 ずっと表示させておきたいのですがどのようにしたら良いのでしょうか? ちなみに、その液晶ディスプレイは、NT4のパソコンをつなげていたときは、ついたままだったので、液晶ディスプレイ側の機能ではないと思います。

  • 最小化最大化のボタンの表示をVBAで設定できない

    アクセス2003を使用しています。 VBAでフォームの最小化最大化のボタンの制御をしたいのですがエラーになってしまいます。 詳しい内容は Private Sub Form_Load() Me.MinMaxButtons = 0 End Sub とすると、  実行時エラー '2448':  このオブジェクトに値を代入することはできません。 となってしまいます。 そのままヘルプを開くと ********************************************************** フォームまたはデータ アクセス ページを読み取り専用にする フォームを読み取り専用にするには、フォームのプロパティを設定します。データ アクセス ページを読み取り専用にするには、グループ レベル プロパティを設定し、データ アクセス ページに含まれるグループごとに読み取り専用にします。 ********************************************************** となっています。 MinMaxButtonsのヘルプには ********************************************************** フォームの最大化ボタンと最小化ボタンを表示するかどうかを示します。 値の取得および設定が可能です。 ********************************************************** と書かれてるのでVBAで設定可能だと思いますがなぜかできません。 よろしくお願い致します。

  • 23型ディスプレイで全画面表示ができません

    私は23型のディスプレイを購入してPCを接続して使用しています。 画面の解像度設定で1920×1080を選択してもディスプレイの上下左右に明らかに余白ができてしまいます。ディスプレイの設定項目にも表示サイズの変更などはありませんでした。 使用しているディスプレイはAmarkのP2389HIです。OSはWindows8.1です。 全画面で表示する方法を教えてください。よろしくお願いします。

  • VBAにていろいろ質問させてください

    VBAの処理です。 本来なら別々に質問しなければいけないのですが、 どれでも良いのでお分かりになるものを教えてください。 (1)複数のフォームを起動する場合、既にそのフォームが起動中であるとしる方法。またそのフォームを画面最前線に表示する方法。 (2)ExcelシートのコントロールにはLostFocusが使用できるのですが、VBAのActiveXコントロールにはありません。代替機能はありますか?(必須チェックなどしたいのですが) (3)フォームで[?]ボタンでヘルプを出力したいです。 [?]は閉じるボタンの横に配置できたのですが、 [?]に対する各コントロールのヘルプはどう設定すればよいのですか? すみません。どれでも良いので教えてください

  • EXCEL2016のVBAのイメージボックス

    (専門知識に欠ける素人なのでわかりにくい表現などあるかと思いますが、ご了承願います) エクセルにて簡単なプログラムをVBAで作って使っています。 エクセル上には、問いと答えが入力してあり、 VBAでは、別ウィンドウで、問いに答えるという ありきたりな学習プログラムを自作し使用しています。 正解するとイメージボックスに正解画像 外れると同じイメージボックスにはずれ画像 が表示されるというものです。 画像はjpgです。 動作は全く問題なく、数年使用しています。 不定期で、稀に、イメージボックスに画像が表示されないことがあります。 表示はされないのですが、プログラム上は問題なく作動します。 一旦表示されないと、プログラムを再起動しない限り、 延々固まった時の画像のままです。 ウィンドウをディスプレイの枠外に移動し、 ディスプレイ内に戻すと本来の画像が出てきますが、 一旦エラーが起こるともう画像は表示されません。 プログラムの問題ではないです。 画像の問題でもありません。 プログラムが固まるわけでもなく、エラーでもありません。 ただ、画像がただしく表示されないことがあるだけです。 一日に十数回使用していますが、 まったく起こらない日が何日も続く時もありますし 一日に何度も起こることもあります。 おそらく、VBAの不具合なのかと思いますが 対象方法などありますでしょうか?

  • シニア向けのディスプレイについて

    最近は液晶が安くなったため、両親にパソコンディスプレイをプレゼント(今はおさがりのGAWIN M10を使って貰っています)したいのですが、ディスプレイサイズが大きくても解像度が高く文字が小さくなり逆に見づらく困っています。最近であれば、どんなディスプレイがお薦めでしょうかね? なお、OSはWindows 7の為、設定で文字サイズを変えることも出来ますが、デフォルトのままで使う方がレイアウトが壊れないなど何かとトラブルの発生がしにくい為、初心者向きであると感じています。 それとも、安い物を買って設定をいじった方が良いでしょうかね?

専門家に質問してみよう