Top > マクロを使ってみよう > 印をつけるマクロを作成したい

印をつけるマクロを作成したい

エクセルのマクロを使って、ある条件の時に「印」がつくように設定することができる。

例題)エクセルシート上に「男」「女」「夫」「妻」など数箇所に選択欄がある。それぞれのいずれかに「○」を設定してみよう。

マクロではなくオートシェイプで「○」をつけていくという方法もあるにはあるが、件数が多いと大変な作業だ。時間もかかるし、間違う可能性もある。

そこで、マクロを使って処理してみよう。

以下のようなマクロをVBA上にコーディングしてみよう。

VBAは、「ALT」+「F11」でも開く。

Sub sirusi()
Dim a As Range
 If TypeName(Selection) = "Range" Then
  Set a = Selection
  ActiveSheet.Shapes.AddShape(msoShapeOval, a.Left, _
      a.Top, a.Width, a.Height).Select
  Selection.ShapeRange.Fill.Visible = msoFalse
  a.Select
 End If
End Sub

以上でコーディングは終了。これをVBA上に表記し、画面を閉じよう。

次に実行してみよう。

「ATL」+「F8」でマクロ一覧を開く。sirusiを選択。

この状態で「オプションボタン」などを選択し、ショートカットに任意の文字を設定おこう。ここでは仮に「Y」にしておく。

エクセル上で適当にセルを選択してCtrl+Yを押下してみよう。

そのセルに「○」が表示されたのが確認できるだろう。