• ベストアンサー

VBAで、ネットワークを介してアクセスしてくるコンピューターを特定する方法を教えて下さい。

社内のサーバーにExcelファイルを保存しているのですが、社内からそのExcelファイルにアクセスしてくるPCを特定する方法を教えて下さい。言語はVBAを使用します。 目的は、誰がセル内容の変更や上書きなどの操作を行ったかを記録するためです。 以上、ご存じの方がいらっしゃいましたら教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • kenpon24
  • ベストアンサー率64% (66/102)
回答No.1

目的からするとブックの共有機能を使って変更履歴の記録を行うとかどうですか。 ツール→変更履歴の記録→変更箇所の表示 ファイル→プロパティで表示されるブックの最終更新者でしたら ThisWorkbook.BuiltinDocumentProperties("Last Author") で取得できます。 これを保存後に起こるイベント(SelectionChageやClose後のOpenイベント)で取れば、一応は誰が最後に更新したかはわかるかと。 BeforeSaveやBeforeCloseだと保存前になるので注意が必要ですね。 http://www.relief.jp/itnote/archives/000487.php 後はAPIを使ってhost名を取得するコードを、BeforeSaveイベントに仕込むとか。。 http://www.moug.net/faq/viewtopic.php?t=36965

yama3007
質問者

お礼

返事が遅くなってしまって申し訳ありません。 2番目の方法でうまく記録できました:ThisWorkbook.BuiltinDocumentProperties("Last Author") 大変ありがとうございましたm(_ _)m

関連するQ&A