【VBA】非表示シートを部分一致で抽出する方法
手作業で非表示シートから必要な情報を抜き出すのは時間がかかります。この記事では、部分一致で非表示シートを抽出するVBAマクロを作成し、業務効率化を図ります。
サンプルコード
VBA
Option Explicit
Sub ExtractHiddenSheets()
Dim ws As Worksheet, lastRow As Long, i As Long
Dim searchStr As String
'検索文字列を設定
searchStr = "部分一致文字列"
'アクティブブックのシート数を取得
For Each ws In ThisWorkbook.Sheets
If Not ws.Visible Then
'非表示のシート名にsearchStrが含まれているかチェック
If InStr(1, ws.Name, searchStr) > 0 Then
'抽出先シートを作成または選択
Sheets("ExtractSheet").Activate
'セルA列に抽出結果を書き込む
lastRow = Cells(Rows.Count, "A").End(xlUp).Row + 1
Cells(lastRow, 1) = ws.Name
End If
End If
Next ws
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
シート名や列番号が正しいか確認してください。