エクセルで印をつけるマクロを作成したい
エクセルのマクロを使ってある条件の時に「印」を設定してみましょう。
例題)エクセルシート上に「男」「女」「夫」「妻」など数箇所に選択欄があってそれぞれのいずれかに「○」を設定してください。
という例題があります。マクロじゃなくオートシェイプで「○」をつけていくと言う方法もあるのですが、件数が多いとその分時間も掛かってしまって面倒ですよね。間違うかもしれないし・・・
そこで、マクロを使って作成してみたいと思います。
以下のようなマクロをVBE上にコーディングしてみてください。
VBEの開き方は、「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
以上です。これをVBE上に表記し、画面を閉じてください。
次に実行してみましょう。
ATL+F8でマクロ一覧を開き、sirusiを選択します。この状態で「オプションボタン」などを選択し、ショートカットに任意の文字を入れておきます。ここでは「Y」あたりにしておきます。
エクセル上で適当にセルを選択してCtrl+Yを押下してみてください。そのセルに「○」が表示されるようになっているのを確認してください。
例題)エクセルシート上に「男」「女」「夫」「妻」など数箇所に選択欄があってそれぞれのいずれかに「○」を設定してください。
という例題があります。マクロじゃなくオートシェイプで「○」をつけていくと言う方法もあるのですが、件数が多いとその分時間も掛かってしまって面倒ですよね。間違うかもしれないし・・・
そこで、マクロを使って作成してみたいと思います。
以下のようなマクロをVBE上にコーディングしてみてください。
VBEの開き方は、「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
以上です。これをVBE上に表記し、画面を閉じてください。
次に実行してみましょう。
ATL+F8でマクロ一覧を開き、sirusiを選択します。この状態で「オプションボタン」などを選択し、ショートカットに任意の文字を入れておきます。ここでは「Y」あたりにしておきます。
エクセル上で適当にセルを選択してCtrl+Yを押下してみてください。そのセルに「○」が表示されるようになっているのを確認してください。
Posted by KurokiLine