• ベストアンサー

全てシートをスクロールさせたいのですが。。

エクセルVBAでブックの全てのシートを洗濯し 全てシートをスクロールさせたいのですが .ScrollColumnをどのように指定すればいいのでしょうか? Window.ScrollColumn = 4とするとオブジェクトが必要です。 とメッセージがでます。 ActiveWindow.ScrollColumn = 4にすると全てのシートに 反映されません。。。

質問者が選んだベストアンサー

  • ベストアンサー
  • hananoppo
  • ベストアンサー率46% (109/235)
回答No.1

こんな感じで如何でしょう。 Sub Sample() Dim Ws0 As Worksheet, Ws As Worksheet Set Ws0 = ActiveSheet For Each Ws In Worksheets Ws.Activate ActiveWindow.ScrollColumn = 4 Next Ws Ws0.Activate End Sub

maki06
質問者

お礼

返信ありがとうございます! ScrollColumnはやはりActiveWindowでないと いけないのでしょうか? Worksheets.Selectでシートを全て指定して ActiveWindow.ScrollColumn = 4 だとアクティブウィンドウしか反映されないので でActiveWindowの代わりに Window.ScrollColumn = 4 としてみたのですが動きませんでした。。

その他の回答 (1)

  • hananoppo
  • ベストアンサー率46% (109/235)
回答No.2

> ScrollColumnはやはりActiveWindowでないといけないのでしょうか? そもそも、普通はウィンドウを1つしか開いていないはずですが。「新しいウィンドウを開く」で複数のウィンドウを開くことは可能ですが、複数のウィンドウに対してはScrollColumnを1つずつ設定するしかないようです。

maki06
質問者

お礼

やはりそうなんですね。。 もっと簡単にいくのかと思ってました。。 そしてhananoppoさんのコードで実行したらいくことができました! ありがとうございました!!

関連するQ&A