- ベストアンサー
エクセルで○をつけるマクロ設定
エクセルシートで、数箇所に選択欄があります。 例えば、男・女、初回・継続などです。 それぞれのいづれかに○をつけたいのですが、 オートシェイプで○をつけていくと何件もあるので 時間が掛かり面倒なんです。 マクロ設定はできませんか? 初心者なのでマクロがわかりません。 あるのなら解かりやすく教えてください。 お願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
処理はマクロでも出来ないことは無いかもしれませんが、たぶんオートシェイプで○をつけていった方が早いですよ。 その時に、ひとつひとつ新しいオートシェイプを作ったりしていませんか? ひとつ適当な大きさの○を作ったら、後はCtrlキーを押しながら移動させればコピーできますよ。(細かい位置調整はCtrl+方向キーでできます)
その他の回答 (2)
- zap35
- ベストアンサー率44% (1383/3079)
>マクロがわかりません >あるのなら解かりやすく教えてください。 はずいぶんですね(^^; とりあえず書いたとおりに操作してみてください。 まず以下のマクロを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を押下すると、そのセルに楕円が描画されるはずです
お礼
丁寧な解説ありがとうございます。 やってみます。
- imogasi
- ベストアンサー率27% (4737/17069)
文字の○で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に変えて遊んでください。そして何かを掴んだら再度質問かな。
お礼
ご回答頂きありがとうございます。 やはりVBAが必要なんですね。 貼り付けした方が早いですよね。 私にはちょっと難しいみたいです(^^;
お礼
回答頂きありがとうございます。 そうなんですか、コピー貼り付けが早いんですね。 地道にやります。