Attribute VB_Name = "Worksheet1" '___________________________________________________________ 'sample-vbaxlws1-1 version 1.1, Copyright (C) 2001 Tomizono 'sample-vbaxlws1-1 comes with ABSOLUTELY NO WARRANTY. This is free software, 'and you are welcome to redistribute it under certain conditions. 'See http://www.gnu.org/copyleft/gpl.html#SEC3 for details. '___________________________________________________________ 'discribes howto treat MS Excel Worksheet objects. 'this is a VBA module source for MS Excel. 'this version: http://www.geocities.com/tomizono/gpl/2001/sample-vbaxlws1-1.1.1.bas 'lattest: http://www.geocities.com/tomizono/gpl/sample-vbaxlws1-1.bas ' 'Further information is available at: 'http://www.geocities.com/tomizono/vba/worksheet1.html '___________________________________________________________ 'sample-vbaxlws1-1: discribes howto treat MS Excel Worksheet objects. 'Copyright (C) 2001 Tomizono ' 'This program is free software; you can redistribute it and/or modify 'it under the terms of the GNU General Public License as published by 'the Free Software Foundation; either version 2 of the License, or '(at your option) any later version. ' 'This program is distributed in the hope that it will be useful, 'but WITHOUT ANY WARRANTY; without even the implied warranty of 'MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 'GNU General Public License for more details. ' 'You should have received a copy of the GNU General Public License 'along with this program; if not, write to the Free Software 'Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA '___________________________________________________________ Option Explicit Sub Worksheet1() ' 新規ワークシートを追加する。 Dim ws As Worksheet Set ws = ActiveWorkbook.Sheets.Add MsgBox ws.Name, vbOKOnly, ws.CodeName End Sub Sub Worksheet2() ' 新規ワークシートをまとめて追加する。 Dim ws As Worksheet Set ws = ActiveWorkbook.Sheets.Add(Count:=3) MsgBox ws.Name, vbOKOnly, ws.CodeName End Sub Sub Worksheet3() ' ワークシートを削除する。 Application.DisplayAlerts = False ActiveSheet.Delete Application.DisplayAlerts = True End Sub Sub Worksheet4() ' 次のワークシートを削除する。 Application.DisplayAlerts = False ActiveSheet.Next.Delete Application.DisplayAlerts = True End Sub Sub Worksheet5() ' ワークシートをまとめて削除する。 Dim MyName As String Dim ws As Worksheet MyName = ActiveSheet.CodeName Application.DisplayAlerts = False For Each ws In ActiveWorkbook.Worksheets If ws.CodeName <> MyName Then ws.Delete End If Next ws Application.DisplayAlerts = True End Sub Sub Worksheet6() ' Name を CodeName と違うものにする。 Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Name = "Sheet200" & ws.Index Next ws End Sub Sub Worksheet7() ' Name を CodeName と同じにする。 Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Name = ws.CodeName Next ws End Sub Sub Worksheet8() ' ワークシートをコピーする。 ActiveSheet.Copy Before:=ActiveSheet End Sub Sub Worksheet9() ' ワークシートを新しい Book としてコピーする。 ActiveSheet.Copy End Sub Sub Worksheet10() ' ワークシート全部を新しい Book としてコピーする。 ActiveWorkbook.Worksheets.Copy End Sub Sub Worksheet11() ' ワークシートを移動して、新しい Book を作る。 ActiveSheet.Move End Sub Sub Worksheet12() ' ワークシートを順次、切り替える。 Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Activate Application.Wait Now() + 1 / 24 / 3600 Next ws End Sub Sub Worksheet13() ' ワークシートをブックごと、読み取り推奨保存する。 ActiveSheet.SaveAs FileName:="C:\tmp\sheet13.xls", ReadOnlyRecommended:=True End Sub Sub Worksheet14() ' ワークシートだけをコピーして、読み取り推奨保存する。 ActiveSheet.Copy ActiveSheet.SaveAs FileName:="C:\tmp\sheet13.xls", ReadOnlyRecommended:=True End Sub Sub Worksheet15() ' ワークシートをテキストファイルとして保存する。(csv) ActiveSheet.SaveAs FileName:="C:\tmp\sheet15.csv", FileFormat:=xlCSV End Sub Sub Worksheet16() ' ワークシートをテキストファイルとして保存する。(text) ActiveSheet.SaveAs FileName:="C:\tmp\sheet16.txt", FileFormat:=xlTextPrinter End Sub Sub Worksheet17() ' ワークシートを非表示にする。 ActiveSheet.Visible = xlSheetHidden End Sub Sub Worksheet18() ' すべてのワークシートを表示する。 Dim ws As Worksheet For Each ws In ActiveWorkbook.Worksheets ws.Visible = xlSheetVisible Next ws End Sub