特定の文字が含まれているシート名、たとえば「MOUG」という文字が含まれている
「MOUG0001」「A1_MOUG」といった名前が付けられたシートをすべて選択された状態
にするサンプルマクロを紹介します。
標準モジュールに次のマクロを作成してください。
Sub Sample()
Dim myWS As Worksheet
MsgBox "「MOUG」が含まれるシートをすべて選択します"
For Each myWS In Worksheets
If myWS.Name Like "*MOUG*" Then
If ActiveSheet.Name Like "*MOUG*" Then
myWS.Select (False)
Else
myWS.Select
End If
End If
Next
End Sub
シート名を取得するには、Nameプロパティを使います。
For Each...Nextステートメントで、すべてのシートに対してシート名の
チェックを行っています。その際、2つの文字列の比較を行うLike演算子
で、ワイルドカード文字のアスタリスク(*)を使ってパターン比較しています。
チェック中のシートが該当のものであり、且つ、既に選択されている
シートの名前にも「MOUG」が含まれていたら、既に選択されているすべてのシートと
チェック中のシートを選択したいので、Selectメソッドの引数に
「False」を指定します。「False」を指定すると、既に選択されていた
オブジェクトと指定したオブジェクトを選択することができます。
|