2017-03-07 10 views
1

表示可能なワークシート領域をポイントで決定しようとしています。これまでのところ、私はApplication.Widthを試しましたが、スクロールバーを含む全領域が表示され、同様にApplication.Heightにはリボンと水平スクロールバーが含まれています。私が特に必要とするのは、この表示可能なワークシート領域のサイズだけです。可視ワークシート領域のサイズを点で決定する

私が今まで試したことは、目に見える範囲を見ていることです。例えば、私は、行41の列ABの半分と半分を見ることができれば、私はこれで唯一の問題はあるコード

Debug.Print ws.Range("A1:AA40").Width 
Debug.Print ws.Range("A1:AA40").Height 

を使用することができ、AA40スルーA1を見ることができれば、私は持っていません。フルサイズ。また、アプリケーションウィンドウのサイズを画面の半分に変更すると、調整できません。

ピクセル数に変換する必要はありません。ポイントサイズが必要です。可視領域のサイズを取得する方法を知っている人、または少なくともこの可視領域にのみ合わせるために範囲のサイズを変更する方法は知っていますか?

答えて

0

ApplicationWindowsコレクションにアクセスして、そのコレクションのアイテムの属性をWidthおよびHeightにすることができます。例えば。

Debug.Print Application.Windows(1).Width 
Debug.Print Application.Windows(1).Height 

またActiveWindowを参照し、同様にそのからプロパティを取得することができます。

例:

enter image description here

+0

ので、左上から右下に斜めに引かれた線は、画面をオフに行くことになった、まだ私のアプリケーションウィンドウの大きさを与えて巻き取りました。しかし、私は必要な答えに私を導いた。 'Width'を' UseableWidth'に変更し、同様に高さを変更してください。それは魅力のように働いた。ありがとうございました! – SandPiper

+0

興味深いフォローアップで、私はこのコンピュータのサンプルを1台のコンピュータで試してみましたが、うまくいきました。私の他のコンピュータでは、それを正しく動作させるために見出しをオフにしなければなりませんでした。好奇心が強いですが、とにかく私の場合は見出しを表示したくありませんでした... – SandPiper

関連する問題