サイトについて      連絡先   検索

VBA シートが存在するか確認する

はじめに

Excel VBA マクロのシートが存在するか確認する方法を紹介します。

Sheets か Worksheets をループして、シートの名前が存在するかで判定できます。

  • 目次
    • シートが存在するか確認する

シートが存在するか確認する

すべてのシートをループして、指定した名前のシートが存在するかで判定します。


' 指定した名前のシートが存在するか判定する
Public Function ExistsWorksheet(ByVal name As String)

    Dim ws As Worksheet
    For Each ws In Sheets
        If ws.name = name Then
            ' 存在する
            ExistsWorksheet = True
            Exit Function
        End If
    Next
    
    ' 存在しない
    ExistsWorksheet = False
End Function

ExistsWorksheet の戻り値が True なら存在します。False なら存在しません。

次のように引数に確認したいシート名を入力します。


Dim b As Boolean
b = ExistsWorksheet("名前")
Debug.Print(b)

Sheets と Worksheets の違いはワークシート以外を取得するかどうかです。

  • 目次
    • シートが存在するか確認する