If Not Intersect(r.DirectPrecedents, Target) Is Nothing Then の部分は、 変更する必要がありません。もし、A1〜A5の式で参照している部分が他の シートになったとしたら、>469さんのマクロでも対応不可ですが、同じシートを 参照しているのであれば、何も変える必要はありません。私(>453)の方は、 A1〜A5の式の参照先セルが変わったら、それに応じて If x = 5 Or x = 6 Then 'E列かF列 If y >= 6 And y <= 10 Then '6行目〜10行目 の部分を変更しなければなりません。>469さんの方が、より汎用性があるということです。 VBAで使う単語 の意味は excel vba と組み合わせて 例えば excel vba DirectPrecedents などとしてググればわかります。