|
▼にしもり さん:
>Logファイルに書くとは、どうすればできるのでしょうか。
>ごめんなさい、まったく知識がありません。
>変更をしたひとの社員IDが判ればそれでいいのですが。。
意味を理解できないマクロを使うとメンテに困りますので
使用する前にマクロの内容を調べてからにしてください。
社員IDをどうやって取得するのかわかりませんので、
とりあえずログイン名で。
マクロを記入した後、一度Bookを閉じてください。
Sheetの情報を変更するとBook同じフォルダに"変更.Log"が出来ます。
エラー処理は入れてません。
'ThisWorkbookモジュールへ
Option Explicit
Private Sub Workbook_Open()
Dim WSN As Object
Set WSN = CreateObject("WScript.Network")
myName = WSN.UserName
Set WSN = Nothing
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim R As Range
Dim buf As Variant
For Each R In Target.Cells
buf = Array(myName, Sh.Name, R.Address(0, 0), R.Value) 'Logingする情報
Add_Log (buf)
Next R
Erase buf
End Sub
'標準モジュールへ
Option Explicit
Public myName As String
Sub Add_Log(Str As Variant)
Dim myPath As String
myPath = ThisWorkbook.Path '保存先
Const myFile As String = "\変更.Log" 'ファイル名
Open myPath & myFile For Append As #1
Write #1, Join(Str, ",")
Close #1
End Sub
|
|