Microsoft Access 掲示板

Access2013で作成したフォームがAccess2019で開くとサイズが大きい件

5 コメント
views
4 フォロー

以前大変お世話になました。
久しぶりに相談させて頂きます。

Win10Pro
Access2019(365Business)

Win7Pro環境でAccess2013を使い作成したプログラムを使い続けてましたが、Win10Proにマシン入れ替えに伴い、Access2019(365Business)でプログラムを開いたら、作成したフォームがことごとく大きく画面に治まりきらなくなっています。

これはなぜなのでしょう?
フォームのサイズを全て作り直す必要があるのでしょうか?
あるいは、何か設定があるのでしょうか?

お手数ですがご教示賜りますようお願い申し上げます。

SUSUMU
作成: 2019/11/27 (水) 08:28:31
通報 ...
1
SUSUMU 2019/11/27 (水) 16:30:49 b3fdd@8e48d

大変失礼致しました。
マシンのディスプレイの設定でAccessの表示が125%になっていました。
今回はこれにて解決いたしました。
また相談させて頂きます。
失礼しました。

2
hatena 2019/11/27 (水) 17:17:35 修正 >> 1

解決できてよかったですね。

もし、ディスプレイの設定を125%のままで使いたい場合は、下記のリンク先で紹介している関数を使うと簡単にフォームの拡大縮小ができます。これを使って0.8 (1/1.25)で縮小するといいでしょう。

フォーム上のコントロールのサイズを拡大/縮小する関数
モニターの解像度によってフォームと、その全てのコントロールのサイズを指定した倍率で拡大/縮小したい このような質問をたまに見かけます。 単純に全てのコントロールの 左位置, 上位置, 幅, 高さ に指定倍率をかければよさそうに思えます。 当ブログでも同じロジックでレポートを拡大/縮小する関数を下記で紹介しました。 レポートのサイズを拡大縮小する関数 - hatena chips フォームでも同じように出来るので...
fc2

3

hatena様

ご返信いただきありがとうございます。

お教えいただいた内容確認させていただきました。
この方法ですと、全てのフォームにこの機能を持たせようと思うと、全てのフォームにこの設定をしなければなりませんか?
OS側で120%の設定がされていても、Accessのみ100%表示にできる方法というのはないでしょうか?

4

OS側で120%の設定がされていても、Accessのみ100%表示にできる方法というのはないでしょうか?
たぶんないと思います。

この方法ですと、全てのフォームにこの機能を持たせようと思うと、全てのフォームにこの設定をしなければなりませんか?
そうなりますね。
下記のような関数を作成しておいて、それを一度だけ実行すればOKです。

Public Sub AllFormsSizeCange()
    Dim Frm As Access.AccessObject   
    For Each Frm In Application.CurrentProject.AllForms
        DoCmd.OpenForm Frm.Name, acDesign 'デザインビューで開く
        Call FormSizeChange(Forms(Frm.Name), 0.8) 'サイズ変更
        DoCmd.Close acForm, Frm.Name, acSaveYes '保存して閉じる
    Next Frm    
End Sub

念のためにバッグアップを取ってから実行してください。

5
SUSUMU 2019/12/04 (水) 17:39:35 b3fdd@0b6da

ありがとうございます。
試してみます。