Davidは、3つの異なるウィンドウで表示し、それらをすべて同時にスクロールさせる必要がある大きなワークシートを持っています。彼は「並べて表示」を使用して同期スクロールをオンにする方法を知っていますが、2つのウィンドウでしか機能しないようです。デビッドは、3人でそれを行う方法があるかどうか疑問に思います。

3つ以上のウィンドウがあるExcelで同期スクロールを実行する方法はありません。ニーズ(およびデータの性質)によっては、ウィンドウをクリエイティブに分割して2つの実際のウィンドウを作成することでこれを回避できる場合がありますが、そのうちの1つは、同じワークシートの2つの異なる部分を表示するように分割されます。 。

それがニーズに合わない場合、できることはウィンドウ間の同期をシミュレートすることだけです。これは、次のようなマクロを使用して実行する必要があります。

Sub SynchSheets()

' Duplicates the active sheet's cell position in each sheet

If TypeName(ActiveSheet) <> "Worksheet" Then Exit Sub

Dim shUser As Worksheet     Dim sht As Worksheet     Dim lTopRow As Long     Dim lLeftCol As Long     Dim sAddr As String

Application.ScreenUpdating = False

' Note the current sheet     Set shUser = ActiveSheet

' take information from current sheet     With ActiveWindow         lTopRow = .ScrollRow         lLeftCol = .ScrollColumn         sAddr = .RangeSelection.Address     End With

' loop through worksheets     For Each sht In ActiveWorkbook.Worksheets         If sht.Visible Then 'skip hidden sheets             sht.Activate             Range(sAddr).Select             ActiveWindow.ScrollRow = lTopRow             ActiveWindow.ScrollColumn = lLeftCol         End If     Next sht

shUser.Activate     Application.ScreenUpdating = True End Sub

このマクロは基本的に、ブック内の各ワークシートをステップスルーし、同じセルをアクティブにして各ワークシートに表示します。画面に表示されているワークシートから始めると、マクロは各ワークシートに表示されているものを同じになるように「同期」します。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(9777)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice365のExcelに適用されます。