• ベストアンサー

実行時エラーについて(エクセル)教えてください

ブック内の特定のシート(シート名"白")がブック上に無いときにフォームのボタンをクリックしたときに "白シートがありません"と表示させるにはどのようなマクロの記述をしたらよいのでしょうか? ご教示願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

まぁ、一般的には For Each で Worksheets をチェックするのですが、 簡単に こんな感じで如何でしょうか。 Sub ボタン1_Click() If Not TypeName(Application.Evaluate("'白'!A1")) = "Range" Then   MsgBox "「白」 というシート名は、ありません" End If End Sub  

ankoromo
質問者

お礼

ありがとうございました。 ご回答いただいたアドバイスで、思い通りのモノができました。助かりました。

その他の回答 (1)

  • pkh4989
  • ベストアンサー率62% (162/260)
回答No.1

VBA なら以下を参考にしてください。 Sub Chk_Main() If Chk_SheetName = False Then MsgBox "白シートがありません" End If End Sub Function Chk_SheetName() As Boolean Dim wIx As Integer Dim wCnt As Integer wCnt = 0 Chk_SheetName = False For Each wSheet In Workbooks("Book1").Worksheets 'ブック名は任意 If wSheet.Name = "白" Then Chk_SheetName = True Exit For End If Next End Function

ankoromo
質問者

お礼

ありがとうございました。 ご回答いただいたアドバイスで、思い通りのモノができました。助かりました。

関連するQ&A