0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

マクロ「Excel 全シート倍率100%, A1セル移動」を「保護されているシート」で実行する場合

Posted at

はじめに

以前、上記タイトルのマクロを使用していたのですが、
PCを変えたタイミングでロストしてしまったので、
再度以下の記事を参考に作成しなおしました。

その際、一部のExcelで本機能を実行するときだけエラーが発生したのでバグ調査しました。

調査結果

保護されているシートの場合、(当たり前ですが)
保護されていてセル選択できないため「.Select」が失敗していました。

修正後コード

「.Select」を使わない形のコードです。
保護を解除するのは負けた感じがするので「ws.Range("A1").Activate」を使いました。
※完全に好みですが、実行完了メッセージの表示も削除しました


Sub Cursor_A1()
    Application.ScreenUpdating = False

    Dim ws As Worksheet
    For Each ws In Worksheets
        If ws.Visible = xlSheetVisible Then
            ws.Activate
            ws.Range("A1").Select
            ActiveWindow.ScrollColumn = 1
            ActiveWindow.ScrollRow = 1
            ActiveWindow.Zoom = 100
        End If
    Next ws

    Sheets(1).Activate
    Application.ScreenUpdating = True
End Sub

さいごに

機能自体はとても便利なものなので皆さん入れてみてください!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?