|
たま さん、りんさん、こんばんは。
>また、カメラ機能が記録出来ないので同じBOOKを2つのWINDOWで左右に並べて表示し
>表示倍率の差をつけて擬似的にカメラ機能を作成しようと思ったのですが、
>WINDOW1の倍率を25%で表示し
>WINDOW2の倍率を100%で表示して
>(ココまで何とか完成)
>WINDOW1( 25%)で選択した範囲(セル)を
>WINDOW2(100%)で画面上に一瞬で表示させたいのですが
>色々試しても分かりません。
↑の方です。
「WINDOW1の倍率を25%」のウインドウをアクティブにし、
「WINDOW2の倍率を100%」のウィンドウに反映させたいセル範囲を選択した状態で
以下のコードを実行して下さい。
'===============================================================
Sub test()
myadd = Selection.Address
ThisWorkbook.Windows("100%ズーム").Activate
' ↑該当する名前に変えてね
Application.Goto Range(myadd), True
With ThisWorkbook
Call dist_win(.Windows("25%ズーム"), .Windows("100%ズーム"))
' 両方、該当する名前に変えてください
End With
End Sub
'==============================================================
Sub dist_win(ParamArray mywin())
' ↑三つ以上のウインドウでも対応できるようにしときました。
Application.ScreenUpdating = False
On Error Resume Next
For Each x In Application.Windows
x.WindowState = xlMinimized
Next x
On Error GoTo 0
For idx = UBound(mywin()) To LBound(mywin()) Step -1
With mywin(idx)
.WindowState = xlNormal
End With
Next
Application.Windows.Arrange ArrangeStyle:=xlVertical
Application.ScreenUpdating = True
End Sub
確認してください。
|
|