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()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.Name = "Sheet200" & ws.Index
Next ws
End Sub
Sub Worksheet7()
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()
ActiveSheet.Copy
End Sub
Sub Worksheet10()
ActiveWorkbook.Worksheets.Copy
End Sub
Sub Worksheet11()
ActiveSheet.Move
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"
End Sub
Sub Worksheet15()
ActiveSheet.SaveAs FileName:="C:\tmp\sheet15.csv",
FileFormat:=xlCSV
End Sub
Sub Worksheet16()
ActiveSheet.SaveAs FileName:="C:\tmp\sheet16.txt", FileFormat:=xlTextPrinter
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 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
| Object | 説明 | Type の定数値 |
|---|---|---|
| Worksheet | ワークシート | Const xlWorksheet = -4167 (&HFFFFEFB9) |
| Chart | チャートシート | Const xlChart = -4109 (&HFFFFEFF3) |
| Dialog | ダイアログシート | Const xlDialogSheet = -4116 (&HFFFFEFEC) |
| - | Excel 4 マクロシート | Const xlExcel4MacroSheet = 3 |
| - | Excel 4 マクロシート(国際版) | Const xlExcel4IntlMacroSheet = 4 |
| 用例 | 解説 |
|---|---|
| ActiveSheet | Active になっている Worksheet Object を特定する。 |
| ActiveWorkbook.Worksheets(1) | Worksheets Collection の item 順位を利用する。1から始まる連番を指定する。 |
| ActiveWorkbook.Worksheets.Item(1) | Worksheets Collection の item 順位を利用する。上の方法の丁寧な表現。*1 *2 |
| ActiveWorkbook.Worksheets("Sheet3") | Worksheets Collection に対して、Worksheet Object の Name プロパティを与える。 |
| Sheet1 | Worksheet Object の CodeName を直接用いる。 |
| ActiveSheet.Next | Worksheet Object の Next プロパティで、次のシートを示す。最後のシートで実行するとエラーになります。 |
| ActiveSheet.Previous | Worksheet Object の Previous プロパティで、前のシートを示す。最初のシートで実行するとエラーになります。 |
ActiveSheet.Parent上の表現は、ActiveWorkbook と同じものを返します。