VBA 簡単にExcelへの起動回数(アクセス数)をカウント!そのままコピペで使えます。

 

どうもmMmです!

 

「WEBのようにExcelでアクセス数がカウントできたらいいのになぁ~」

 

こうお悩みのアナタと私のためのコードを紹介します。

ThisWorkBook内に下記のコードをコピペするだけでカウントできますよ!

 

Excelで作成したレポートが見られているか?

見たいと思ってもらえるような内容や紹介ができたのか?

アクセス数をカウントすることで、体感だけでなく実際の数値として可視化できるのは重要ですよね。

是非、コードをコピペして可視化してみてくださいね。

 

今回は2つのコードを紹介します。

ブック内にアクセス数を記録する方法と、別CSVファイルにアクセス数を記録する方法を紹介します。

利用用途に併せて使い分けてくださいね!

 

 

スポンサーリンク

ブック内にアクセス数を記録するコード

 

まずは、ブック内にアクセス数を記録する方法です。

起動されるExcelがコピー・切取されないと解っている場合はこちらがおススメです。

 

 

コード

 

Private Sub Workbook_Open()

Dim ws As Worksheet
Set ws = ActiveWorkbook.Worksheets("Count")

my_row = ws.Cells(Rows.Count, 2).End(xlUp).Row + 1

ws.Cells(my_row, 2) = Now()
ws.Cells(my_row, 3) = Environ("COMPUTERNAME")
ws.Cells(my_row, 4) = Environ("USERNAME")
ws.Cells(my_row, 5) = Environ("OS")

ThisWorkbook.Save

End Sub

 

Environは環境変数を取得できる関数です。

 

 

出力イメージ

 

Excel ブック内アクセス数

 

※PC名・ユーザー名はダミーです。実際は使用者のPC名とユーザ名が記録されます。

 

 

スポンサーリンク

別のCSVにアクセス数を記録するコード

 

↑で紹介したコードはExcelをコピーされると正しくアクセス数をカウントできません。

その場合はこちらのコードがおすすめです。

指定したCSVファイルにアクセス数がカウントさせるので、Excelがコピペされても問題ありません。

また、複数Excelにコードを差し込むことでブック別にアクセス数を記録することもできます。

 

 

コード

 

Private Sub Workbook_Open()
    
    'エラーが発生しても、エラーを表示させずに開かせる
    On Error GoTo ErrorHandler
    
    
    Dim LogData(4) As Variant
    
    'アクセス回数を記録するファイル名を設定 ※好きな場所に変更してください。
    file_path = ActiveWorkbook.Path & "\data.csv"
    
    'ファイル番号を取得。
    FileNumber = FreeFile
     
    Open file_path For Append As #FileNumber
    
    LogData(0) = Now()
    LogData(1) = Environ("COMPUTERNAME")
    LogData(2) = Environ("USERNAME")
    LogData(3) = Environ("OS")
    LogData(4) = ActiveWorkbook.Name
    
    Print #FileNumber, Join(LogData, ",")
     
    Close #1


ErrorHandler:
 
End Sub

 

ネットワーク接続不可などのエラーに備えて例外処理を入れています。

これによりVBAコードによるエラー表示が出現しません。

動作も素早く、使用者はアクセス数が取得されていることに気づきません。

 

 

CSVの出力イメージ

 

Excel CSVアクセス数

 

※PC名・ユーザー名はダミーです。実際は使用者のPC名とユーザ名が記録されます。

 

 

まとめ

 

コードを2つ紹介しました。

Excelコピーのリスクヘッジ・複数ブックのアクセス数カウントの観点から2つ目がおススメです。

 

私自身、会社でこのコードを使ってアクセス数を取得・グラフ化して傾向把握などをしてます。

共有事項などは結構見ていない人が多かったりします)笑

そして、自身のレポートが有用なのかどうかが解りました。

 

今までは結構な工数をかけてレポートが読まれたかを口頭やメールで確認していました。

でも、この方法ならコードを差し込むだけでアクセス数がカウントできるんです!

 

ぜひ、コピペしてお使いください!

コメント