Excel VBA 勉強メモ(ワークシートとセル操作)

  • テキストは、FOMの 「Excel2002マクロ/VBA入門」。
  • 以下のプロシージャは、自分でアレンジしたもの。
  • 動作確認は、Excel2003にて。

Sub 選択した範囲にOKと入力()
Selection.Value = “OK”
End Sub

Sub 選択した範囲に格子線を引く()
With Selection.Borders
.LineStyle = xlContinuous ‘実線
.Weight = xlThin ‘細線
.ColorIndex = 1 ‘黒
End With
End Sub

Sub 選択した範囲に青二重下線を引く()
With Selection.Borders(xlEdgeBottom) ‘下線
.LineStyle = xlDouble ‘二重線
.Weight = xlThick ‘太線(二重線の場合は太線に設定)
.ColorIndex = 5 ‘青
End With
End Sub

Sub 図形表示()
ActiveSheet.Shapes(“三角”).Visible = True ‘三角と名づけたオートシェイプを表示する
End Sub

Sub 図形非表示()
ActiveSheet.Shapes(“三角”).Visible = False ‘三角と名づけたオートシェイプを非表示にする
End Sub

Sub シート追加() ‘インプットボックスでシート名を指定
Worksheets.Add
sheetname = InputBox(“新規シート名を入力してください”, “シート名入力”)
ActiveSheet.Name = sheetname
End Sub

Sub シート削除() ‘インプットボックスでシート名を指定
sheetname = InputBox(“削除するシート名を入力してください”, “シート名入力”)
Worksheets(sheetname).Select
ActiveSheet.Delete
End Sub

Sub 五月度という名前のシートを追加する()
Sheets.Add
ActiveSheet.Name = “五月度”
End Sub

Sub シート削除()
ActiveSheet.Delete
End Sub

Sub メニューへ() ‘メニューシートのセルA1へ移動
Worksheets(“メニュー”).Select
Range(“a1”).Select
End Sub

Sub シート移動()
sheetname = InputBox(“シート名を入力してください”, “シート名入力”)
Worksheets(sheetname).Select
rangename = InputBox(“移動削除するセル番地を入力してください”, “セル番地”)
Range(rangename).Select
End Sub

Sub 選択範囲に色を塗る()
Selection.Interior.ColorIndex = 2 ‘白
End Sub

Sub 選択範囲に指定の色を塗る()
colorname = InputBox(“カラーコードを入力してください”, “カラーコード入力”)
Selection.Interior.ColorIndex = colorname
End Sub

Sub 右へ10下へ10のセルに色を塗る()
ActiveCell.Offset(10, 10).Select
Selection.Interior.ColorIndex = 3 ‘赤
End Sub

Sub CtrlEndの動作()
Selection.End(xlDown).Select ‘Ctrl+End と同じ役割。
End Sub

Sub 指定セル範囲を塗る()
Range(Cells(1, 1), Cells(1, 10)).Interior.ColorIndex = 6 ‘セルA1からA10までを黄色に塗る
Range(“a2”).Interior.ColorIndex = 4 ‘A2を緑
End Sub

Sub 上下左右に連続する範囲を選択し色を塗る()
ActiveCell.CurrentRegion.Select ‘上下左右に連続する範囲を選択(間に空白セルがあっても、行or列まるごと空白でなければ選択される)
Selection.Interior.ColorIndex = 7 ‘桃
End Sub

英和
  • Interior:内部
  • current:今の
  • region:領域