• ベストアンサー

エクセルで○をつけるマクロ設定

エクセルシートで、数箇所に選択欄があります。 例えば、男・女、初回・継続などです。 それぞれのいづれかに○をつけたいのですが、 オートシェイプで○をつけていくと何件もあるので 時間が掛かり面倒なんです。 マクロ設定はできませんか? 初心者なのでマクロがわかりません。 あるのなら解かりやすく教えてください。 お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nekoron07
  • ベストアンサー率37% (69/184)
回答No.1

処理はマクロでも出来ないことは無いかもしれませんが、たぶんオートシェイプで○をつけていった方が早いですよ。 その時に、ひとつひとつ新しいオートシェイプを作ったりしていませんか? ひとつ適当な大きさの○を作ったら、後はCtrlキーを押しながら移動させればコピーできますよ。(細かい位置調整はCtrl+方向キーでできます)

pekopoko55
質問者

お礼

回答頂きありがとうございます。 そうなんですか、コピー貼り付けが早いんですね。 地道にやります。

その他の回答 (2)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

>マクロがわかりません >あるのなら解かりやすく教えてください。 はずいぶんですね(^^; とりあえず書いたとおりに操作してみてください。 まず以下のマクロをATL+F11でVBE画面を開き、左上のVBAprojectのシート名右クリック→挿入→標準モジュールで開く画面に貼り付けます Sub Macro1() Dim trg As Range  If TypeName(Selection) = "Range" Then   Set trg = Selection   ActiveSheet.Shapes.AddShape(msoShapeOval, trg.Left, _       trg.Top, trg.Width, trg.Height).Select   Selection.ShapeRange.Fill.Visible = msoFalse   trg.Select  End If End Sub 次にVBE画面を閉じてワークシート画面に戻り、ATL+F8でマクロ一覧を開き、Macro1を選択した状態で「オプションボタン」クリックしてショートカットに任意の文字を入れます。今回は丸印を書くので「M」あたりがよいでしょう ワークシート画面で適当なセルを選択してCtrl+Mを押下すると、そのセルに楕円が描画されるはずです

pekopoko55
質問者

お礼

丁寧な解説ありがとうございます。 やってみます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

文字の○でOKですか。 質問者自身が○を入れるのですか。 入力はエクセルを良く知らない方がやる? ーー 文字の○にしろ、図形の○にしろ、1つ作ってコピーし、CTRLを押しながらたくさん位置を指定し、CTRL+Vで貼り付けたほうが、簡単ですよ(#1でご回答の方法) ーー マクロでは Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) ActiveSheet.Shapes.AddShape(msoShapeOval, Target.Left, Target.Top, 32.25, 13.5).Select Selection.ShapeRange.Fill.Visible = msoFalse End Sub 見たいになる。これをシートSheet1のBeforeDoubleClick(に貼り付ける。Sheet1のシートタブで右クリックすると、「コードの表示」が出るから、クリックして出てきた画面に貼り付ける。 Sheet1のセルでダブルクリックすると、その場所に円・長円が描かれる。 しかしそれを自分の気に入ったように修正するには、VBAの経験が必要 。 32.25, 13.5の部分の数字をいろいろ変えて、どう変化するか遊んでください。 そしてそれらをTarget.Width,Taget.Heightに変えて遊んでください。そして何かを掴んだら再度質問かな。

pekopoko55
質問者

お礼

ご回答頂きありがとうございます。 やはりVBAが必要なんですね。 貼り付けした方が早いですよね。 私にはちょっと難しいみたいです(^^;

関連するQ&A