【VBA】非表示シートを高速に置換する方法
手作業で大量のデータを移動したり、置き換えたりするのは時間がかかります。特に非表示にしたシートを別のシートと置き換える場合、エクセルは通常の操作では遅いです。しかし、VBAを使用すれば高速化が可能です。この記事では、非表示のシートを高速に置き換える方法を紹介します。
サンプルコード
VBA
Option Explicit
Sub ReplaceHiddenSheet()
' 非表示のシート名と新しいシート名を定義
Dim hiddenSheetName As String: hiddenSheetName = "HiddenSheet"
Dim newSheetName As String: newSheetName = "NewSheet"
Application.ScreenUpdating = False ' 画面更新停止
On Error GoTo ErrorHandler ' エラー処理開始
' 新しいシートを作成
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = newSheetName
' 非表示のシートを削除
Sheets(hiddenSheetName).Delete
Application.ScreenUpdating = True ' 画面更新再開
MsgBox "置換が完了しました。", vbInformation
Exit Sub
ErrorHandler:
MsgBox Err.Description, vbExclamation
Resume Next
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
シート名や列番号が正しいか確認してください。