[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『targetが結合セルだった場合』(55)
Worksheet_Changeで、B4を選択していたら処理が実行されるようにしたいです。
Dim p As String: p = "あああ"
If Target = p Then msg box "123" End If
B4は、B4〜I4まで結合されており、実行しようとすると「型が一致しません」戸でてしまいます。
このエラーを回避するにはどうすれば良いのでしょうか?教えて下さい。
< 使用 Excel:Excel2010、使用 OS:Windows10 >
違ってましたらお許しを
(隠居じーさん) 2018/03/15(木) 12:13
ありがとうございます!削除するとダメなのですね。
削除する際にも、貼り付けたデータを消す処理を入れたいのですが、削除する場合にエラーを出さない方法はありませんか?
(55) 2018/03/15(木) 13:02
何をしたいのかほとんど解ってないけど。
Target.cells(1).address(0,0) = "B4" (BJ) 2018/03/15(木) 13:11
こんな感じでしょうか。
Private Sub Worksheet_Change(ByVal Target As Range) Dim p As String Dim Rng As Range p = "あああ" For Each Rng In Target If Not Intersect(Rng, Range("B4")) Is Nothing Then If Rng.MergeArea(1, 1).Value = p Then MsgBox "123" End If End If Next End Sub (ろっくん) 2018/03/15(木) 14:39
他の皆さんが、既にご回答ですが。 もし対象結合セルが一つだけなら(B4)のみみたいなので。 全セル選択、一括削除、対応なら下記を(2010ならサポートしてると思います) プロシジャーの先頭行に If Target.CountLarge > 1 Then Exit Sub でも。(オバーフロー対策)
^^;
(隠居じーさん) 2018/03/15(木) 15:13
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.