- 日時: 2012/06/06 19:16
- 名前: VBレスキュー(花ちゃん)
- ***********************************************************************************
* カテゴリー:[エクセル][][] * * キーワード:Excel VBA,Excel2010,シート数,シート名,シートの追加,シートの削除 * *********************************************************************************** '=================================================================================================== '投 稿 日:2012.05.06 '投 稿 者:VBレスキュー(花ちゃん) 'タイトル:Excel のシート数・シート名の取得及びシートの追加・削除 '========1=========2=========3=========4=========5=========6=========7=========8=========9=========0
Private Sub Button18_Click(sender As System.Object, e As System.EventArgs) Handles Button18.Click Call ExcelOpen("", "") '新規ファイルをオープンして、Excel を起動 '============== シート数・シート名の取得及びシートの追加・削除 ===============
'-------------------- 下記のVB6.0用コードを移植 --------------------------- ' http://hanatyan.sakura.ne.jp/patio/read.cgi?mode=view2&f=128&no=7 '--------------------------------------------------------------------------
'シート(Worksheet)数の取得 Dim sheetCount As Integer sheetCount = xlSheets.Count 'Excel の裏に隠れたりしますので、オーナーウィンドウ(Me)を指定下さい。 MessageBox.Show(Me, "現在のシート(Worksheet)数 = " & sheetCount & " です。")
'新規にシートを追加 Dim xlSheet2 As Excel.Worksheet xlSheet2 = DirectCast(xlSheets.Add, Excel.Worksheet) MRComObject(xlSheet2)
sheetCount = xlSheets.Count MessageBox.Show(Me, "シートを1個追加したので、Worksheet 数 = " & sheetCount & " です。")
'追加したシートの名前を取得 Dim xlSheet1 As Excel.Worksheet xlSheet1 = DirectCast(xlSheets.Item(sheetCount), Excel.Worksheet) MessageBox.Show(Me, "追加したシート名 = " & xlSheet1.Name & " です。")
'追加したシートの名前を変更 xlSheet1.Name = "Test1"
'変更したシート名を取得(確認) MessageBox.Show(Me, "シート名を " & xlSheet1.Name & " に変更しました。")
'追加したシートを削除 xlSheet1.Delete() sheetCount = xlSheets.Count MRComObject(xlSheet1) MessageBox.Show(Me, "追加したシートを削除したので、Worksheet 数 = " & sheetCount & " です。")
'シート名の取得 Dim xlElement As Excel.Worksheet = Nothing For Each xlElement In xlSheets Debug.Print(xlElement.Name) MRComObject(xlElement) Next
'----------------------------------------------------------------------- '新規にBook を開いた時に表示したいシート数を設定する場合 'Excelのツール→オプション→全般→新しいブックのシート数 の設定と同じ
'xlApp.SheetsInNewWorkbook = 1
'Book をオープンする前に書いて下さい。 '-----------------------------------------------------------------------
'============================================================================= 'Excelファイルを上書き保存(True 又省略すれば)して終了処理を実行 Call ExcelClose(IO.Path.GetFullPath(".\Test.xlsx"), False) 'False の場合保存しないで終了 'Excel.EXE がタスクマネージャに残っていないか調査(実使用時は必要なし) Call ProcessCheck() End Sub
|