コンピュータでは、ログファイルは、オペレーティングシステムまたは他のソフトウェアの実行で発生するイベント、または通信ソフトウェアの異なるユーザー間のメッセージのいずれかを記録するファイルです。ロギングは、ログを保持する行為です。最も単純なケースでは、メッセージは単一のログファイルに書き込まれます。

シナリオを考えてみましょう。アプリケーションは、アプリケーションにアクセスしているユーザーの詳細をログファイルに記録しています。

Logファイルは、さまざまな状況で、特に開発者にとって役立ちます。ログファイルは、一時的またはより永続的な情報を保存できるプレーンテキストファイルです。ログファイルを作成するのに多くのコードは必要ありません。この記事では、特定のフォルダーに自動ログファイルを作成することに焦点を当てます。

===

質問:ファイルが開かれるたびに、現在の日付、時刻、およびユーザー名を含むメモ帳ファイルを作成するにはどうすればよいですか?

以下は、財務情報を含むExcelワークブックのスナップショットです。

image 1

この例では、結果はテキストファイルの形式になります。メモ帳には、日付、時刻、その他の詳細が含まれます。ややこのように:

image 2

ログファイルを作成するには、以下の手順に従ってVBエディターを起動する必要があります。[開発者]タブをクリックします。[コード]グループから[VisualBasic]を選択します

image 3

  • [挿入]をクリックしてから[モジュール]をクリックします

image 4

これにより、新しいモジュールが作成されます。モジュールに次のコードを入力します

Sub LogInformation(LogMessage As String)

Const LogFileName As String = "D:\FOLDERNAME\TEXTFILE.LOG"

Dim FileNum As Integer

FileNum = FreeFile ' next file number

Open LogFileName For Append As #FileNum ' creates the file if it doesn't exist

Print #FileNum, LogMessage ' write information at the end of the text file

Close #FileNum ' close the file

End Sub
Public Sub DisplayLastLogInformation()

Const LogFileName As String = "D:\FOLDERNAME\TEXTFILE.LOG"

Dim FileNum As Integer, tLine As String

FileNum = FreeFile ' next file number

Open LogFileName For Input Access Read Shared As #f ' open the file for reading

Do While Not EOF(FileNum)

Line Input #FileNum, tLine ' read a line from the text file

Loop ' until the last line is read

Close #FileNum ' close the file

MsgBox tLine, vbInformation, "Last log information:"

End Sub
Sub DeleteLogFile(FullFileName As String)

On Error Resume Next ' ignore possible errors

Kill FullFileName ' delete the file if it exists and it is possible

On Error GoTo 0 ' break on errors

End Sub

image 5

ThisWorkbookモジュールで次のコードをコピーします

Private Sub Workbook_Open()

LogInformation ThisWorkbook.Name & " opened by " & _

Application.UserName & " " & Format(Now, "yyyy-mm-dd hh:mm")

End Sub

image 6

  • これで、VBAコードの準備がすべて整いました。次回Excelブックを開くと、日付と時刻がメモ帳に保存されます。下の画像を参照してください:

image 7

マクロはデータを上書きしません。

結論:マクロは、ブックが指定されたパスとフォルダーで開かれるたびに実行されます。

私たちのブログが気に入ったら、Facebookで友達と共有してください。また、TwitterやFacebookでフォローすることもできます。

_私たちはあなたからの連絡をお待ちしております。私たちの仕事を改善、補完、または革新し、あなたのためにそれをより良くする方法を教えてください。 [email protected]_までご連絡ください