システムwiki

スクリーン解像度VBAが影響します

Spinaz1 解決済 最終更新日:2021-05-05 10:30

HI、

私の組織の現在のフォームをMicrosoft Office Proplusのアップグレードの準備ができています.プロセスの一環として、Microsoft Readiness Toolkitを実行し、次のコードを更新する必要があることがわかりました.このコードは画面解像度を設定するために使用されます.
そして、フォームが印刷された方法や機能に影響を与えることなく、削除できるかどうかを知りたいのですが.このコードは今日のほとんどのモニタと比較してかなり低いので、このコードは古くなっているようですので、その価値がそれを更新するのはわかりません.
影響がない場合は削除してください.誰かが私がこのコードが何であるかを正確に理解するのを手伝ってください.

これはモジュール内にあるコードで、ワークブックが開いたときに呼び出されます.

関数GetSystemMetrics32 lib "user32" _


エイリアス "GetSystemMetrics"(ByVal Nindex) パブリックサブスクリーン()
'サブエンド
次のエラー再開について
DIM LRESWIDTH長い
薄型
> 文字列としてDIM SRES
LRESWIDTH= GETSYSTEMMETRICS32(0)
lresheight= getsystemmetrics32(1)
SRES= LRESWIDTH&「X」&LRESHEIGHT
n= 1~2
シート(n).

ActiveSheet.protectパスワード:= "zippy"

ケースSRESを選択
ケースは= "800x600"
Application.Width= 800
application.height= 600
ケースは= "1024x768"
application.width= 1024
application.height= 768
ケースは= "1152x864"
application.width= 1152
application.height= 864
ケース
Application.Width= 800
application.height= 600
ActiveWindowと
.dplayheehings= false
.displaygridlines= false


終了
次の
誤った後藤0.

返信リスト(回答:3)

3 #
Andreas

そのコードはまったく意味がありません.

コードをアクティブにしてファイルを1回開きます.

そのコードをコメントアウトする

ファイルを保存する前に実行中のコードがある場合:そのコードもコメントアウトしてください

ファイルを保存

アンドレアス.

応答3# ->にスキップ
2 #
Spinaz1

こんにちはアンドレアス

このコードが何であるかを理解してください.ユーザーの画面にフォームが表示されている方法を変更するか、または印刷されたフォーム上の他のフォーマットにも影響を与える方法を変更しますか?

助けを感謝します.

スコット

応答2# ->にスキップ
1 #
Andreas

ハイスコット

wellでは、フォームが印刷されると、画面に表示されるものではなく、プリンタとプリンタの設定によって異なります.

コードは何ですか...

GetSystemMetricsプライマリディスプレイモニタの画面の幅を決定します. ピクセル.

https://docs.microsoft.com/ja-jp/windows/win32/api/winuser/nf-winuser-getSystemMetrics.

Application.Width/Heightは、Excelのサイズを取得または設定するために使用できます. ポイント.

https://docs.microsoft.com/ja-jp/office/vba/api/excel.application.width.

これは、このコードが無意味な理由です.800ピクセルは800ポイントではありません!

なぜApplicationwindows を減らすのですか?ユーザーはRessをサイズ変更できます.後で最大化する!だから意味がありません.

次に、最初の2枚を保護します...そのためには意味があるかもしれませんが、そのようなものを開くことは馬鹿です.

なぜですか?ファイルを開いて単にマクロを無効にすると、シートは保護されていません.

そのため、コードを実行してからファイルを保存します.現在の設定がどの設定で開いても、最初の2枚のシートは常に保護されています.

ActiveWindow.DisplayHeadings= false行と列の見出しをオフにします

https://docs.microsoft.com/ja-jp/office/vba/api/excel.window.displayheehings.

ActiveWindow.DisplayGridLines= falseグリッド線をオフにする

https://docs.microsoft.com/ja-jp/office/vba/api/excel.window.displaygridlines.

またこの手順は画面に影響を与え、ファイルにも保存されています...

ファイルの先頭が非常に悪い場合は、問題が発生しますが、このコードのためではありません.それを削除して忘れてください.

andreas.