- 締切済み
VBAで選択したセルのみ処理を実施するには?
VBAを勉強し始めました。 本当に単純な質問で申し訳ありませんが、 教えてください。 VBAで選択したセルのみに処理を実施するにはどのようにすればいいでしょうか? 例えば、任意に選択したセル全てに一括で"○"を入力する。 です。 宜しくお願い致します。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
質問の場合はたまたま Sub test01() Selection.Value = "○" End Sub で、出できるが >選択したセルのみ処理を実施するには 一般に通用するパターではない。 個別に勉強しないとならない。 その中で Sub test02() For Each cl In Selection cl.Value = "○" Next cl End Sub のやり方は汎用性が大きい。 cl.Value = "○"のところの処理が色々。 ーー 2つの離れたセル範囲の塊をCTRLを押して指定し Sub test03() Selection.Copy Range("c10") End Sub を実行すると、意に沿わない場合もありえる。 個別に考えないといけない例。
- myRange
- ベストアンサー率71% (339/472)
>選択したセルのみに処理を実施するには 選択されたセルをひとつずつチェックする場合。 例えば、範囲選択したセルの、"○"を"●"に変更する場合。 '---------------------------------------- Sub Test() Dim myCell As Range For Each myCell In Selection If myCell.Value = "○" Then myCell.Value = "●" End If Next myCell End Sub '--------------------------------------- 詳しくは、Selectionプロパティ 及び、For Each~Nextステートメントのヘルプを覗くこと。 以上です。
- n-jun
- ベストアンサー率33% (959/2873)
>例えば、任意に選択したセル全てに一括で"○"を入力する。 Selection.Value = "○" Selection プロパティを利用する。 マクロの自動記録でチョコチョコ出てきますね。
お礼
大変参考になりました。ありがとうございます。 また機会があれば、是非教えて下さい。