- ベストアンサー
VBAで全てのシートを選択しA1セルに移動する方法について
- VBAを使用して、Excelの全てのシートを選択し、A1セルに移動する方法について教えてください。現在作成しているコードでは、非アクティブシートが移動されず、移動後の表示位置がばらばらになってしまいます。
- 「Worksheets.Select」コードを使用して全てのシートを選択し、A1セルに移動しようとしていますが、アクティブシート以外は移動されず、移動後の表示位置も正しくありません。全てのシートをA1に移動し、ウィンドウもA1に移動する方法があれば教えてください。
- Excel VBAを使用して、全てのシートをA1セルに移動する方法についてお伺いしたいです。現在のコードでは、アクティブシート以外は移動されず、表示位置もばらばらになってしまいます。全てのシートをA1に移動し、ウィンドウもA1に移動する方法があればご教示ください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
Scrollが出来るのはアクティブなシートに限られると思います。 見えないように全シートをアクティブにして実行したらどうでしょう? 一例です。 Sub シートをすべて選択後A1セルへ移動() Dim ws As Worksheet Application.ScreenUpdating = False For Each ws In Worksheets ws.Activate Application.Goto reference:=Range("A1"), Scroll:=True Next ws Sheets(1).Select Sheets(1).Range("A1").Activate Application.ScreenUpdating = True End Sub
その他の回答 (4)
- layy
- ベストアンサー率23% (292/1222)
追記。 アドイン「すべてのシートをHOMEポジションへ」で 作ったときのコードはこれでした。 Sub To_Home() Dim ws As Variant For Each ws In Worksheets If Sheets(ws.Name).Visible = True Then Sheets(ws.Name).Select Range("A1").Select End If Next Sheets(1).Select End Sub 参考。
- Wendy02
- ベストアンサー率57% (3570/6232)
私の解釈が合っていれば、このようにすればよいと思います。 'この場合は、標準モジュールのほうがよい。 Sub TestSelectA1() Dim Ac As Worksheet Set Ac = ActiveSheet ActiveWorkbook.Worksheets.Select Range("A1").Select Ac.Select End Sub
- layy
- ベストアンサー率23% (292/1222)
かなり前 すべてのシートでA1ポジションにする、これを右クリックメニューに組み込むアドインサンプルを見たことあります。 CTRL+HOMEでもすぐですが。 あいにくサイトはすぐに思い出せません。検索してみては?。
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! ごく単純に・・・ Sub test() Dim i As Long For i = 1 To Worksheets.Count With Worksheets(i) .Select .Range("A1").Activate End With Next i End Sub こんな感じではどうでしょうか? 的外れならごめんなさいね。m(__)m
お礼
明けましておめでとうございます。 こんなに早く沢山のご回答を頂けるとは思っていませんでした。 ここにあるほぼ全ての方法で解決できるようです。 どの方法も解決方法であり、甲乙付けがたいのですが。 ポイントは先着順とさせていただきます。 皆様ありがとうございました。