- 締切済み
エクセルで複数ブックのスクロールを双方向に同期させる方法
10程度の複数のブック、たとえばA、B、C、D~I、Jがあります。それぞれのブックには同じ名前のシートが一つだけあります。A~Jは全て同じ形式のブック/シートです。 A~Jを全て開きます。 ブックAのシートAを上下左右にスクロールしたとき、B~Jのブックについても同じ位置にスクロールさせたい。AからB~Jだけでなく、BでもCでもどれをスクロールさせても他のブック/シートも同期させてスクロールさせたい。 方法をご存じでしたらヒントをください。よろしくお願いします。 エクセル2003でおねがいします。 色々調べたのですが、スクロールではイベントが発生しないようなので力業では難しそうですが、エクセル自体に2つのシートを同期させる機能があるようなので何らかの方法で出来そうな気がします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- mitarashi
- ベストアンサー率59% (574/965)
>スクロールではイベントが発生しないようなので 探してみました。日本語の記事には良さそうなのが見あたらないので、海外まで対象を広げ、下記を見つけました。 サブクラス化によりスクロールバーのEventを生成する http://www.cpearson.com/excel/DetectScroll.htm 安定したサブクラス化を実現するための(詳細は読んで無いですが) ActiveX DLLを下記からダウンロードして登録する必要あり Take advantage of stable and reliable subclassing with this all http://www.vbaccelerator.com/codelib/ssubtmr/ssubtmr.htm regsvr32等でレジストリに登録する必要があります。 対象バージョンが見あたりませんが、当方のXL2000では動作しました。 「レジストリに登録」という点で、会社では使いにくいですが、ご参考まで。
お礼
回答ありがとうございます。 やはり、なんらかの手はあるんですね。 ただ、英語でかいてあることと、若干危険な香りもしているので試すのには少し時間がかかりそうです。 今日のところはお礼だけです。結果報告はまた後日になります。 ありがとうございました。
補足
下記、補足のところに書き込みましたが、お礼&報告です。 教えていただいた情報を元に色々調べてみましたが、結果としてはギブアップです。 英語とプログラミングの技術不足で私には手が出ませんでした。 仕方がないので、マクロで強引にこんな感じのプログラムを書きました。 ~~~ cc=workbooks(s_book).windows(1).scrollcolumn ~~~ workbooks(t_book).windows(1).scrollcolmn=cc ~~~ 自動での双方向スクロールとはなりませんでしたが、 半自動での双方向スクロールでとりあえず我慢することにしました。 お礼が遅れて申し訳ありません。ありがとうございました。