
No.4ベストアンサー
- 回答日時:
No.2・3です。
>J4:AA38はそのままに、H1をクリックしたらH4:H38の値全てをクリアする。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("H1,J4:AA38")) Is Nothing Then Exit Sub
Cancel = True
With Target
If .Row = 1 Then '//←ダブルクリックセルがH1の時//
Range("H4:H38").ClearContents
Else
.ClearContents
End If
End With
End Sub
こんな感じになると思います。m(_ _)m
No.3
- 回答日時:
No.2です。
>追加として、応用し、以下のようなコードを入れてみたのですが・・・
複数のダブルクリックイベントなどは共存できません。
範囲をH1~H38とJ4~AA38の範囲限定としたいのですね?
前回のコードを消去し↓のコードに変更してみてください。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("H1:H38,J4:AA38")) Is Nothing Then Exit Sub
Cancel = True
Target.ClearContents
End Sub
すでにお判りかと思いますが、セル範囲を飛び飛びにしたい場合は
範囲をカンマで区切ります。
もちろん範囲を追加しても構いません。m(_ _)m
回答ありがとうございます。
なるほどです、セル範囲が複数ある場合はカンマで区切れば良いのですね。
それでは、こんな事って出来ますか?
J4:AA38はそのままに、H1をクリックしたらH4:H38の値全てをクリアする。
と言うようなものです。
お手数ですが、お手すきの時にでも教えて頂けませんでしょうか。
よろしくお願いいたします。
No.2
- 回答日時:
こんにちは!
>選択したセルのみ値をクリアするには・・・
間違ったセルを選択しても消去されてしまいますので、ダブルクリックした場合に消去ではどうでしょうか?
一例です。シートモジュールにしてください。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("J4:AA38")) Is Nothing Then Exit Sub
Cancel = True
Target.ClearContents
End Sub
上記コードは1セルずつの操作になります。
選択したセルを一気に消去したい場合はチェンジイベントで対応できると思います。
↓のコードにしてみてください。(同じくシートモジュールです)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim c As Range
For Each c In Selection
If Not Intersect(c, Range("J4:AA38")) Is Nothing Then
c.ClearContents
End If
Next c
End Sub
※ セルを選択した時点で実行されてしまいます。
※ 極端に広範囲(列全体や行全体など)を選択しないでください。
おそらく「応答なし」になってしまうと思います。m(_ _)m
回答ありがとうございます。
ばっちり出来ました。
追加として、応用し、以下のようなコードを入れてみたのですが、名前が適切ではないエラーが出てしまいます。
よろしければ教えて頂けませんでしょうか、よろしくお願いいたします。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("H1:H38")) Is Nothing Then Exit Sub
Cancel = True
Target.ClearContents
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) 【VBA】エクセルで選択した範囲の値のみをクリップボードにコピーするコードについて 3 2023/03/08 17:41
- Excel(エクセル) エクセルVBA 任意のセルの選択時、指定のセルの値を表示 1 2023/04/21 08:13
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
- Visual Basic(VBA) シート間で同じ値があったら指定範囲をコピーして貼り付け 1 2022/11/07 08:01
- Excel(エクセル) エクセル 関数参照範囲のセルの表示 1 2023/03/16 14:55
- Excel(エクセル) マクロを教えてください 3 2023/07/31 21:57
- Excel(エクセル) マクロを教えてください 2 2023/07/30 23:05
- Excel(エクセル) エクセルの散布図で新たに入力した値のデータラベルが空欄になる現象 1 2022/04/26 09:31
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/07/14 12:49
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで連続データから、数...
-
excelで、スクロールをすると限...
-
複数のセルの入力内容を一度に...
-
エクセル 画面上の行数を調節...
-
エクセルの画面で十字マークが...
-
Excel 小さくなったスクロール...
-
セルをクリックすると付箋のよ...
-
EXCEL アルファベットと数字の...
-
excelで1行ごとに一気に削除す...
-
エクセルでハイパーリンクのU...
-
エクセルで、結合したセルを選...
-
エクセル 数値を全て「1」にす...
-
エクセルで任意のセルをクリッ...
-
Excel選択を繰り返すとセルの色...
-
エクセルで0を除いて昇順に並...
-
Shift押しながら、矢印ボタンで...
-
ピポットテーブルエラー解決方法
-
Excelで表のデータを並び替えた...
-
エクセルでctrl+左クリックで複...
-
エクセルVBA 複数行にまたがっ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで連続データから、数...
-
excelで、スクロールをすると限...
-
複数のセルの入力内容を一度に...
-
Excel 小さくなったスクロール...
-
EXCEL アルファベットと数字の...
-
エクセルの画面で十字マークが...
-
エクセル 画面上の行数を調節...
-
セルをクリックすると付箋のよ...
-
excelで1行ごとに一気に削除す...
-
エクセルでハイパーリンクのU...
-
エクセル 数値を全て「1」にす...
-
エクセルで、結合したセルを選...
-
エクセルで任意のセルをクリッ...
-
Excelで表のデータを並び替えた...
-
ピポットテーブルエラー解決方法
-
エクセルでカーソルが四方に矢...
-
エクセルVBA 複数行にまたがっ...
-
Shift押しながら、矢印ボタンで...
-
列選択で勝手に広範囲に範囲選...
-
エクセルで1つおきに列を削除...
おすすめ情報