新規にシートを追加して(新規ブックでもいいけど)以下のマクロが作れるか試してみてください。 Private Sub Worksheet_Change(ByVal Target As Range) msgbox("あ") End Sub Private Sub Worksheet_Change(ByVal Target As Range) msgbox("い") End Sub Private Sub Worksheet_Change(ByVal Target As Range) msgbox("う") End Sub たぶんできないと思う(同じ名前は使えないとかなんとか表示されてエラーになった) シートの何かのセルに入力した(削除でも貼り付けでもいいけど)タイミングで起動できる マクロの名前はシートにひとつしか許されないはず。 だから、先頭(Sub とか Private Sub とか Function の行)が同じものが同居できない だけで、Sub macro_A() Sub macro_B() みたいに名前が付けられるものや、別のイベントを 受けて起動するものは同居できます。 上記の例で言えば、あるひとつの処理(Worksheet_Change)をうけて、複数の処理を行いたい場合は、 Private Sub Worksheet_Change(ByVal Target As Range) 処理 A 処理 B 処理 C End Sub みたいにするといいです。で、処理A〜Cは、シートではなくモジュールに書くといいです。