• ベストアンサー

WorkSheets.Add 任意の名前のシートがないときだけ

"test"という名前のワークシートがあるときは追加しないで、 ないときだけシートを追加したいんですが、そんな方法ありますか?

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

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

シートがあるか調べる関数を作ってみました。 Public Function SheetExists(name As String) As Boolean Dim x As Worksheet SheetExists = False For Each x In Sheets If StrComp(x.name, name, vbTextCompare) = 0 Then SheetExists = True: Exit Function Next End Function 使い方 If Not SheetExists("test") Then Sheets.Add(after:=Sheets(Sheets.Count)).name = "test" End If

その他の回答 (1)

  • Mahk2
  • ベストアンサー率29% (15/51)
回答No.1

VBAマクロですよね?参照URLのサイトにあるサンプルを関数にしてチェックした後で追加してはいかがでしょう? ちなみにgoogleで「シート 追加 VBA 有無」で検索しました。

参考URL:
http://www2.moug.net/cgi-bin/technic.cgi?exvba+TI04010038

関連するQ&A