重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

エクセル2007を使用して、同じブック内の【暦data合体】というシートと現在見ているシートを整列(左右に並べて表示)して、並べて【比較&同時にスクロール】したいと思っています。
 下のとおり動かすと、最初の画面では予定通り、2画面が正しく表示されています。しかし、そこからスクロールすると、なぜか左側のブック1と右側のブック2が2行分ずれて表示されてしまいます。
 最初の画面が出てから、スクロールする前に表示タブの【同時にスクロール】のチェックを外し、またチェックを入れ直すと、思い通りの動きになりますが、そのようなことをしなくても【比較&同時にスクロール】したいです。どなたか、分かる方、よろしくお願いします。


Sub ウインドウの分割による編集()
Dim strBookName As String

strBookName = ThisWorkbook.Name
ActiveWindow.NewWindow

Windows(strBookName & ":1").Activate
Sheets("暦data合体").Select
Range("A3").Select
ActiveWindow.FreezePanes = True
ActiveWindow.Zoom = 100

Windows.CompareSideBySideWith strBookName & ":2"
Windows(strBookName & ":2").Activate
Range("A3").Select
ActiveWindow.FreezePanes = True
ActiveWindow.Zoom = 100
End Sub

A 回答 (1件)

冗長なようですが、これで大丈夫でしょうか。



Sub ウインドウの分割による編集()
  Dim strBookName As String
  Dim sh As Worksheet
  
  strBookName = ThisWorkbook.Name
  ActiveWindow.NewWindow
  
  Windows(strBookName & ":1").Activate
  Range("A3").Select
  ActiveWindow.FreezePanes = True
  ActiveWindow.Zoom = 100
  Sheets("暦data合体").Select
  Range("A3").Select
  ActiveWindow.FreezePanes = True
  ActiveWindow.Zoom = 100
  
  Windows.CompareSideBySideWith strBookName & ":2"
  Windows(strBookName & ":2").Activate
  Set sh = ActiveSheet
  Range("A3").Select
  ActiveWindow.FreezePanes = True
  ActiveWindow.Zoom = 100
  Sheets("暦data合体").Select
  Range("A3").Select
  ActiveWindow.FreezePanes = True
  ActiveWindow.Zoom = 100
  sh.Select
End Sub
    • good
    • 0
この回答へのお礼

できました。私が丸々一日かけて分からなかったことが、このような形で実現していただき、ありがとうございました。自分がなぜできなかったのかを、コードを見て勉強させていただきます。(m_m)

お礼日時:2018/09/04 22:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!