イベントマクロを初めて書いてみたのですが
A列を全部選択して削除などをするとエラーがて出てしまいます
回避するにはどのようにしたら良いのでしょうか?
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A:A")) Is Nothing Then
Select Case Target.Value
Case Is = "りんご"
cellColor = 3
Case Is = "みかん"
cellColor = 6
End Select
End If
If Not Intersect(Target, Range("B:B")) Is Nothing Then
Select Case Target.Value
Case Is = "りんご"
cellColor = 6
Case Is = "みかん"
cellColor = 3
End Select
End If
Target.Interior.ColorIndex = cellColor
End Sub
以上が書いたものです。
皆様の知恵お貸しください
宜しくお願いします。
No.3
- 回答日時:
こんばんは。
細かいところは別として、
If Target.Count > 1 Then Exit Sub
If Target.Value ="" Then Exit Sub
プロシージャの下に、この二つを先頭に加えればよいと思います。
それと、列全体を対象とするなら、
If Not Intersect(Target, Range("A:A")) Is Nothing Then
↓
If Target.Column = 1 Then
としたほうが短くて済みます。
No.2
- 回答日時:
こんな感じでしょうか?
Private Sub Worksheet_Change(ByVal Target As Range)
Dim cellColor As Integer
Dim Rng As Range
If Not Intersect(Target, Range("A:A")) Is Nothing Then
For Each Rng In Target
cellColor = Rng.Interior.ColorIndex
Select Case Rng.Value
Case "りんご"
cellColor = 3
Case "みかん"
cellColor = 6
Case ""
cellColor = xlNone
End Select
Rng.Interior.ColorIndex = cellColor
Next Rng
End If
If Not Intersect(Target, Range("B:B")) Is Nothing Then
For Each Rng In Target
cellColor = Rng.Interior.ColorIndex
Select Case Rng.Value
Case "りんご"
cellColor = 6
Case "みかん"
cellColor = 3
Case ""
cellColor = xlNone
End Select
Rng.Interior.ColorIndex = cellColor
Next Rng
End If
End Sub
参考まで
ありがとうございます
実行させていただいたのですが
ターゲットをA:Aとしているせいでしょうか
A全体を消したときなどかなりの時間がかかってしまうようです
しかしながらエラーは出なくなりました
参考にさせていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/05/26 17:19
- Visual Basic(VBA) エクセル VBAで複数セル選択時エラーになる問題 3 2022/10/04 02:40
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel初心者です。 詳しい方、...
-
Excel初心者です。 詳しい方、...
-
エクセルでのフラグの立て方
-
1.1は自然数ですか?
-
アップルパイは温かいか冷たいか
-
りんごあめの作り方。
-
自然数ってマイナス含まれますか?
-
相手に物を譲る時、金額が発生...
-
硬くて甘くないリンゴの美味し...
-
エクセルで日計累計
-
数学の問題です。 1個80円のり...
-
間違った発音
-
紅玉にルビをふった事あります...
-
りんごダイエットって 夕食をり...
-
18時以降食べ物を食べず1ヶ月...
-
紅玉は煮崩れしにくい?
-
お肉の平均的なお値段
-
無糖ヨーグルトに何を入れて食...
-
アイスクリームの脂肪分算出方...
-
常温で6時間放置
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルでのフラグの立て方
-
りんごを入れておくとじゃがい...
-
アップルパイの下側の生地
-
相手に物を譲る時、金額が発生...
-
海外の人がりんごを皮ごと食べ...
-
「どこだか」と「どこか」どう...
-
「だまされたと思って」
-
「りんごの歌」のりんごの気持...
-
18時以降食べ物を食べず1ヶ月...
-
アップルパイは温かいか冷たいか
-
1.1は自然数ですか?
-
りんごダイエットって 夕食をり...
-
パサパサになってまずくなって...
-
質問を読まないorお気持ち表明...
-
シャトレーゼのアップルパイは3...
-
アイスクリームのようなりんご
-
マクドナルドのアップルパイは...
-
硬くて甘くないリンゴの美味し...
-
3週間冷蔵庫に入ったままのパ...
-
りんごあめの作り方。
おすすめ情報