Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


38845 / 76732 ←次へ | 前へ→

【43015】Re:セルの値が変更した時のコメント
回答  だるま WEB  - 06/9/29(金) 9:46 -

引用なし
パスワード
   ▼ゆう さん:
>おせわになります。
>
>セルを更新した時、変更前のデータをコメントとして残しておきたいのですが、
>可能でしょうか?
>コメントの
>Worksheet_Changeを使用したとき、変更前のデータはどう取ればよいのでしょうか?
>
>例えば、A1セルの内容を AAからBB、BBからCCに変更したとき(変更日も表示)
>コメントには 『9/27 変更前 AA
>        9/28 変更前 BB』のような感じで、
>履歴として残しておきたいのです。
>どなたかご教授願えないでしょうか。
>よろしくお願いします。

こんにちは

こんな感じでいかがでしょうか。^d^

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  Dim V0 As String
  Dim V1 As String
  Dim Cmt As Comment
  Dim Msg As String
  
  With Target
    If .Count <> 1 Then Exit Sub
    V1 = .Value
    Application.EnableEvents = False
    Application.Undo
    V0 = .Value
    .Value = V1
    Application.EnableEvents = True
    
    On Error Resume Next
    Set Cmt = .Comment
    On Error GoTo 0
    If Cmt Is Nothing Then
      Set Cmt = .AddComment
    End If
    
    Msg = Format(Date, "m/d") & " 変更前 "
    With Cmt
      If .Text = "" Then
        .Text Msg & V0
      Else
        .Text vbLf & Msg & V0, Len(.Text), False
      End If
    End With
  End With
End Sub
0 hits

【43011】セルの値が変更した時のコメント ゆう 06/9/29(金) 9:06 質問
【43012】Re:セルの値が変更した時のコメント パン 06/9/29(金) 9:26 発言
【43014】Re:セルの値が変更した時のコメント ゆう 06/9/29(金) 9:42 質問
【43013】Re:セルの値が変更した時のコメント ひげくま 06/9/29(金) 9:37 発言
【43016】Re:セルの値が変更した時のコメント ゆう 06/9/29(金) 9:46 お礼
【43015】Re:セルの値が変更した時のコメント だるま 06/9/29(金) 9:46 回答
【43017】Re:セルの値が変更した時のコメント ゆう 06/9/29(金) 10:09 お礼
【43019】Re:セルの値が変更した時のコメント ゆう 06/9/29(金) 10:11 お礼

38845 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free