シートを削除
ExcelCreatorでシートを削除するには、DelSheetメソッドを使います。
書式 : Public Sub DelSheet(ByVal sheetno As Integer, ByVal count As Integer)
引数 : sheetno 削除するシート番号 (0 ~ ) を設定
count 削除するシート数 (1 ~ ) を設定
説明 : 引数 count に全シート数を超える値を設定すると、存在する全てのシートを削除
注意 : マクロ、VBA が設定された Excel ファイルのシートは削除できません
サンプル1
サンプルプログラム
シートを追加する、で追加したシートを削除します。
'''''' シート削除 ''' ''' 対象のExcelファイル名 ''' 開始シートNo ''' 削除するシート数 '''Private Sub xlsDeleteSheet(ByVal FileName As String, ByVal StartSheetNo As Integer, ByVal deleteSheetCount As Integer) Dim xlsCr As New ExcelCreator.XlsCreator Try 'ファイルの存在チェック If Not System.IO.File.Exists(FileName) Then MessageBox.Show("指定のファイルがありません..", "ファイルを確認して下さい", _ MessageBoxButtons.OK, MessageBoxIcon.Information) Exit Try End If 'ExcelFileを開く If xlsCr.OpenBook(FileName, "") > -1 Then '指定数のシートを削除します xlsCr.DelSheet(StartSheetNo, deleteSheetCount) 'ファイルを保存して閉じます xlsCr.CloseBook(True) Else MessageBox.Show("指定のExcelファイルが読めません..", "ファイルを確認して下さい", _ MessageBoxButtons.OK, MessageBoxIcon.Information) End If Catch ex As Exception Throw ex Finally xlsCr.Dispose() End Try End Sub
サンプル2 シート名を指定してシートを削除
シート名を指定してシートを削除する時は、SheetNo2プロパティでシート番号を取得してからDelSheetメソッドを使います。
SheetNo2 プロパティ
書式 : Public Function SheetNo2(ByVal sheetname As String) As Integer
引数 : sheetname シート名
count 削除するシート数 (1 ~ ) を設定
戻り値: シート番号(integer)
説明 : シート番号は左端から 0 から数えた番号が取得されます。
設定したシート名が Excel ファイルに存在しない場合、戻り値は -1 となります。
シート名を指定してシートを削除
'''''' シート名でシート削除 ''' ''' 対象のExcelファイル名 ''' シート名 '''Private Sub xlsDeleteSheetByName(ByVal FileName As String, ByVal SheetName As String) Dim xlsCr As New ExcelCreator.XlsCreator Dim Msg As String = "" Dim MsgTitle As String = "" Try 'ファイルの存在チェック If Not System.IO.File.Exists(FileName) Then Msg = "指定のファイルがありません.." MsgTitle = "ファイルを確認して下さい" MessageBox.Show(Msg, MsgTitle, MessageBoxButtons.OK, MessageBoxIcon.Information) Exit Try End If 'ExcelFileを開く If xlsCr.OpenBook(FileName, "") > -1 Then 'シート名からシート番号を取得します Dim SheetNo As Integer = xlsCr.SheetNo2(SheetName) If SheetNo > 0 Then '指定数のシートを削除します xlsCr.DelSheet(SheetNo, 1) Else Msg = "指定されたシートが見つかりませんでした.." MsgTitle = "シート名を確認して下さい" MessageBox.Show(Msg, MsgTitle, MessageBoxButtons.OK, MessageBoxIcon.Information) End If 'ファイルを保存して閉じます xlsCr.CloseBook(True) Else Msg = "指定のExcelファイルが読めません.." MsgTitle = "ファイルを確認して下さい" MessageBox.Show(Msg, MsgTitle, MessageBoxButtons.OK, MessageBoxIcon.Information) End If Catch ex As Exception Throw ex Finally xlsCr.Dispose() End Try End Sub
履歴
- 2011/11/30
- 「シート名を指定してシートを削除」を追記
- 2011/11/30
- 公開