| 本章では、ワークブックやシートの操作に関するコードサンプルを例示します。 | |||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
|
アクティブにするとは、マウスやキーボードでで「シートを選択する」という操作のことです。 Object.Activate <記述例> Worksheets("Sheet1").Activate Worksheets(1).Activate |
||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Name = "ワークシート名" <記述例> Worksheets("Sheet1").Name = "月次集計" |
|||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||
| |||||||||||||||||||||||||
|
Activateメソッドと違い、複数のワークシートを選択状態にでき、選択されたシートはすべてアクティブシートになります。
Object.Select(Replace) <記述例> Worksheets("Sheet3").Select <応用例 Sheet3とSheet4を選択して、ワークシートの枠線を消す> 複数のシートを選択するには、Array関数を使用します Worksheets(Array("Sheet3", "Sheet4")).Select ActiveWindow.DisplayGridlines = False |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
|
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
Worksheets("Sheet1").UsedRange.Clear
|
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
Worksheets.Add (Before, After, Count, Type)
<記述例> Worksheets.Add Worksheets.Add(After:=Worksheets("Sheet2")) Set NewWS = Worksheets.Add Worksheets.Add Count:=3 '3シート追加 最後のシートの前に新しいワークシートを追加する ActiveWorkbook.Sheets.Add Before:=Worksheets(Worksheets.Count) |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
|
object.Delete
<記述例> Activesheet.Delete Worksheets("追加シート").Delete |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Object.Copy(Before, After) <記述例> 'ワークシートSheet1をコピーしSheet2にコピーする Worksheets("Sheet1").Select Cells.Select Application.CutCopyMode = False Selection.Copy Worksheets("Sheet2").Select Cells.Select Selection.PasteSpecial Paste:=xlAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False '貼り付け 'ブック間でワークシートをコピーする Workbooks("99-03.xls").Worksheets("Sheet1").Copy After:=Workbooks("Book4.xls").Worksheets("Sheet2") 新しいブックを作成しそこにワークシートSheet1をコピーする 引数「Before」「After」を省略すると、新しいブックが作成されてそこにワークシートがコピーされる。 Worksheets("Sheet1").Copy |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Sub Forwardsheet() Dim Maxsheets As Integer Dim i As Integer '最大シート数を求める Maxsheets = ActiveWorkbook.Worksheets.Count 'カレントのシート番号を求める For i = 1 To Maxsheets If Worksheets(i).Name = ActiveSheet.Name Then Exit For Next i '次の選択可能なシートを求める For i = i To Maxsheets If i < Maxsheets Then If Worksheets(i + 1).Visible = True Then Exit For End If Next i 'シートを進める If i < Maxsheets Then Worksheets(i + 1).Select End Sub Sub Backwardsheet() Dim Maxsheets As Integer Dim i As Integer '最大シート数を求める Maxsheets = ActiveWorkbook.Worksheets.Count 'カレントのシート番号を求める For i = 1 To Maxsheets If Worksheets(i).Name = ActiveSheet.Name Then Exit For Next i '次の選択可能なシートを求める For i = i To 1 Step -1 If i > 1 Then If Worksheets(i - 1).Visible = True Then Exit For End If Next i 'シートを戻す If i > 1 Then Worksheets(i - 1).Select End Sub |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Worksheets("Sheet1").Range("A1").Consolidate _ sources:=Array("Sheet2!R1C1:R37C6", "Sheet3!R1C1:R37C6"), _ Function:=xlSum |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Tate = ActiveCell.Row Range(Cells(Tate + 1, 1), Cells(Tate + 5, 68)).Select With Selection.Borders(xlLeft) .Weight = xlThin .ColorIndex = xlAutomatic End With With Selection.Borders(xlRight) .Weight = xlThin .ColorIndex = xlAutomatic End With Selection.Borders(xlTop).LineStyle = xlNone With Selection.Borders(xlBottom) .Weight = xlThin .ColorIndex = xlAutomatic End With Selection.BorderAround LineStyle:=xlNone |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| DialogSheets("Dialog1").Show DialogSheets("Dialog1").Hide |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Object.UsedRange <記述例> ActiveSheet.UsedRange.Select |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| Object.Visible = 論理値 <記述例> Worksheets("Sheet1").Visible = True |
|||||||||||||||||||||||||
|
|||||||||||||||||||||||||
| 'A列からF列を順ソートする。ソートキーはA列とB列 Sheets("Sheet1").Select Columns("A:F").Select Selection.Sort Key1:=Range("A1"), Order1:=xlAscending, Key2:=Range("B1"), _ Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _ Orientation:=xlTopToBottom, SortMethod:=xlPinYin, DataOption1:=xlSortNormal, _ DataOption2:=xlSortNormal |
|||||||||||||||||||||||||
| ご意見・ご感想をお寄せください。info@beagle-hc.com ‖ このサイトについて | |||||||||||||||||||||||||
| Copyright 2006 - 2009 uTRAM Corp. All Rights Reserved | |||||||||||||||||||||||||