エクセルで変更履歴の記録をする場合、ブックを共有にする必要がありますが、共有にするとマクロの編集等ができなくなります。マクロの編集等をするため共有を解除すると変更履歴が消えてしまいます。
ブックの共有を解除しても履歴を保持する方法がありましたら教えてください。
もしくはVBAで、ワークシートに変更箇所が生じた場合、セルのコメントに変更履歴に準じて「変更したユーザー」「変更日時」「変更前セル内容」を自動的に表示させる方法があれば教えてください。
(行・列の挿入・削除には対応してなくても、セルの変更だけでも結構です)
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
質問後半の問題
Sheet1のシートモジュールに
Dim w
Private Sub Worksheet_Change(ByVal Target As Range)
Set buf = Target.Comment
If TypeName(buf) = "Comment" Then
MsgBox "セルにはコメントがあります"
Target.Comment.Text Text:=Str(Date) & Chr(10) & _
Application.UserName & Chr(10) & w
Else
MsgBox "セルにはコメントがありません"
Target.AddComment Str(Date) & Chr(10) & _
Application.UserName & Chr(10) & w
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
w = Target
End Sub
イベント・プロを使ってますので、操作によっては、予想外のことが
起こるかもしれませんが、普通の操作ではOKのようです。
テストが終わったら、「 MsgBox "セルにはコメントがありません」(他1箇所)は削除のこと。
この回答への補足
早速ありがとうございます
だいたいやりたいことはこれで出来たのですが
(1)行・列の挿入、削除をすると「実行時エラー(13)型が一致しません」が出ます。エラーを出さない処理は出来ますでしょうか
(2)複数セルのコピペをすると実行時エラー(5)プロシージャの呼出または引数が不正です」が出るのと、コメントが挿入されません。エラー処理の方法、複数セル(BOX状)のコピペの場合でもコメントをつけることは出来ないでしょうか
よろしくお願いします
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行して 作業フォルダの中にある PDFファイル名を 3 2023/07/01 15:16
- Word(ワード) Microsoft Word2023で、修正箇所を表示させたい 1 2023/02/09 10:07
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Word(ワード) ワードの文書を開き、校閲→全ての変更履歴/コメント をすると過去の修正履歴が全部出てきます。 校閲→ 2 2022/11/08 22:36
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/06/10 11:06
- iCloud アイホンの購入履歴を全て削除する方法を教えてください。 Apple IDを変更しても購入履歴が残った 2 2022/04/10 17:38
- LINE スマホ変更の際のLINEの引継ぎについて 3 2023/08/26 22:20
- Visual Basic(VBA) VBA 複数のブックに同じ列を表示させる方法 2 2022/07/20 23:49
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 3 2022/06/10 09:24
- Excel(エクセル) エクセルのマクロについて教えてください。 7 2023/01/13 13:33
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで、結合されたセルに連続...
-
エクセル ボタンを押すとセルの...
-
エクセルでセルをクリックして“...
-
excelでSUBTOTAL関数を設定した...
-
エクセルでたくさんのセルを小...
-
【Excel】複数条件の論理式をVB...
-
曜日を判定して、曜日ごとに特...
-
エクセルで任意の桁の数値を判...
-
エクセル・特定のセルの入力を...
-
Excelの関数を教えてください。
-
エクセルで作業した日の日付を残す
-
エクセルで1~9、10~19など度...
-
エクセルマクロで別のシートを...
-
セルを結合した場合の関数(COU...
-
エクセルで2つのセルの値を結合...
-
エクセル2013 選択したセルに1...
-
エクセルで片方のセルに入力し...
-
【初心者です】(エクセルマク...
-
エクセルで過去の日付けの入っ...
-
EXCELで○ヶ月を○年○ヶ月に変換...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
excelでSUBTOTAL関数を設定した...
-
エクセル ボタンを押すとセルの...
-
EXCELで、結合されたセルに連続...
-
セルを結合した場合の関数(COU...
-
エクセルで片方のセルに入力し...
-
VBAで結合したセルがクリアでき...
-
Excel 離れたセルへの連続デー...
-
セルの値を取得してSQL文に組み...
-
【EXCEL】条件に合致するセルの...
-
Excelでnullになるような式のセ...
-
エクセルで作業した日の日付を残す
-
エクセルでセルをクリックして“...
-
Excel セルを結合したものを抽...
-
Excelの表に自動でナンバリング...
-
VBAで困っています。
-
エクセルでたくさんのセルを小...
-
エクセル 結合セル内に空白なら...
-
EXCEL セル結合したセルを参照...
-
Excelのカウントアップボタンに...
-
エクセルでチェックボックスを...
おすすめ情報