No.2ベストアンサー
- 回答日時:
Worksheet_ChangeイベントとTarget引数を使うと良いでしょう。
例えば、使用しているシートのシート名タブを右クリックして「コードの表示」で
開いたコードウィンドウに下記コードをコピーして貼り付けます。
これで、内容を変更したときに、そのアドレスを表示します。
例えば、A1:A10を選択し、"abc" をキー入力し、Shift+Ctrl+Enter を押すと
範囲内に"abc"が入力され、メッセージボックスに "A1:A10" が表示されます。
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Address(False, False)
End Sub
但し、実際に本当に内容を変更したかどうかを検出するには、常に現シートの
写しを作っておいて、双方の内容比較する必要があります。
例えば、何も入力されていない A1:A10 を選択し、DELキーを押すと、何も変更
していないのに、A1:A10 と表示されてしまいます。
ということで、同じ内容を上書きしても変更したのと同様に扱われます。
No.3
- 回答日時:
他の質問に答えた時のものですが、ご参考に。
(1)問題にしているワークシートを開く。
(2)メニユーのツール-マクロ-VBEをクリック。
VBEの画面になります。
(3)左側のフレーム(四角い部分)に「プロジェクト」と表題に部分にある問題のシート名をWクリック。
コードウインドウ(1番大きいフレームが白く出る。)
(4)右側のフレーム(コードウインドウ)の上部の「General」と出ている欄の右の▼をクリックして「Worksheet」をクリック。
(5)Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub
がでますが、Changeのイベントプロシージュアーを書きたいから無視。
(6)SelectionChangeが出ている欄の▼をクリックして
「Change」をクリック。
(7)Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
となります。
(8)この真中に、回答のVBAプログラムをコピペします(通常は自分で作ります)。最初行と最後行はダブらないよう、コピペ対象から外すこと。
(9)表示-オブジェクトをクリックして、ワークシート画面に戻り、操作をする。
Targetと言うRangeの引数を渡してくれるので、
Target.ValueやTarget.AddressやRangeに関するプロパティが使えます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/15 16:33
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/04 12:47
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/07/14 12:49
- Excel(エクセル) エクセルで、特定のセルの内容を更新すると、別の特定セルに 更新日付が自動的に表示させる方法はあります 1 2022/11/14 21:03
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Excel(エクセル) エクセルのセル値に対応してマクロを実行する方法を教えてください セルA1が「1」の時にマクロ名「マク 2 2022/06/19 18:45
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/11 13:29
- その他(Microsoft Office) エクセルのマクロについて教えてください。 5 2023/01/21 09:39
- その他(Microsoft Office) ワードのマクロについて教えてください。 1 2023/01/22 11:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの下部のシートタブの...
-
エクセルで別シートの同じ位置...
-
エクセルでセルの書式設定がで...
-
ワークシートの行が途中から表...
-
EXCELでコピーしたグラフのデー...
-
Excelで大量の2000個のリストを...
-
シート保護してても並び替えを...
-
シート全体を他のブックのシー...
-
エクセルで数式は残したまま他...
-
VBA アクティブでないシートの...
-
excelで勝手にテキストボックス...
-
ロックしたセルのコピー&貼り付け
-
【エクセル】数式のセル番地を...
-
エクセルで打ち込んだ数字を自...
-
Excelで保護のかかったシートの...
-
行の挿入ができなくなった
-
EXCELで複数シート作成後、全シ...
-
エクセルの「入力後に移動する...
-
【エクセル】表から条件に合っ...
-
エクセル、ワークシートの名前...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで別シートの同じ位置...
-
エクセルでセルの書式設定がで...
-
エクセルの下部のシートタブの...
-
EXCELでコピーしたグラフのデー...
-
シート全体を他のブックのシー...
-
ワークシートの行が途中から表...
-
ロックしたセルのコピー&貼り付け
-
excelで勝手にテキストボックス...
-
Excelで保護のかかったシートの...
-
エクセルで数式は残したまま他...
-
VBA アクティブでないシートの...
-
Excelで大量の2000個のリストを...
-
エクセルで打ち込んだ数字を自...
-
シート保護してても並び替えを...
-
【エクセル】表から条件に合っ...
-
【エクセル】数式のセル番地を...
-
シート保護したExcelへの画像貼...
-
コピー&ペーストすると、VLOOK...
-
EXCELで複数シート作成後、全シ...
-
エクセルで多数のシートをまと...
おすすめ情報