使用期限を付けてセキュリティアップ! Excelファイルの小技 【コピペ用マクロコードあり】

更新:2020/05/14

ITスキル

Excelファイルでは使用期限を設けて、期限を過ぎたらファイルを開けないようにすることができます。
Excelの標準機能では、使用期限を設けることはできませんが、マクロ機能(VBA)を使うと設定が可能になります。ここではマクロ機能を用いて使用期限付きExcelファイルを作成する手順を解説します。

▼<お悩みの回答とちょっと違うなと思ったら・・・>
Excelの関連記事はこちら

Excelでマクロを作成するための手順

Excelでマクロを作成するためには、まず[開発]タブを表示させましょう。
併せて、マクロの実行をデフォルトで行えるように設定を変更していきます。
手順を解説します。

(1)Excelの[ファイル]タブをクリックし、「オプション」を選択します。

使用期限 Excelファイル 作成方法 マクロ

(2)Excelのオプションから「リボンのユーザー設定」を選択し、「開発」にチェックを入れます。

使用期限 Excelファイル 作成方法 マクロ

(3)「トラストセンター」から「トラストセンターの設定」ボタンをクリックします。

使用期限 Excelファイル 作成方法 マクロ

(4)「マクロの設定」から「すべてのマクロを有効にする」にチェックを入れ、OKボタンをクリックします。

使用期限 Excelファイル 作成方法 マクロ

セキュリティの観点から見れば、すべてのマクロを有効にすることは好ましくありません。しかし、使用期限を設定するためには、これを行う必要があります。

マクロの実行は、ファイルを開くユーザーごとの設定によって変わりますので、必ずしも使用期限のマクロがそれぞれで有効になるとは限らないことを覚えておきましょう。

使用期限付きのExcelファイルを作成する手順

ここからは、実際に使用期限付きのExcelファイルを作成する手順を解説します。

(1)[開発]タブから「Visual Basic」を選択します。

使用期限 Excelファイル 作成方法 マクロ

(2)VBAの画面から、「ThisWorkbook」をダブルクリックし、次のコードをコピー&ペーストします。

使用期限 Excelファイル 作成方法 マクロ

Private Sub Workbook_Open()
  
    Dim Today As Date
    Dim ExpireDate As Date
 
    Today = Date
    ExpireDate = "2019/12/20"
       
    If Not Today < ExpireDate Then
        MsgBox "ファイルの使用期限を過ぎているため、ファイルを開けません。", vbOKOnly
        ThisWorkbook.Close savechanges:=False
    End If
  End Sub

「ExpireDate」に、使用期限を「yyyy/mm/dd」の形で入力してください。
使用期限を過ぎていた場合に、警告なくファイルを閉じたい場合は「MsgBox~」の行を削除します。

(3)ファイルを「Excelマクロ有効ブック(*.xlsm)」として保存します。

使用期限 Excelファイル 作成方法 マクロ

(4)保存したファイルを開くと、メッセージが表示されファイルを開くことができなくなります。

使用期限 Excelファイル 作成方法 マクロ

マクロが無効化されている場合には使用期限を過ぎていてもファイルを開くことができることに注意してください。
Excelのデフォルト設定では、マクロは無効化されているため、次のメッセージが出ます。

使用期限 Excelファイル 作成方法 マクロ

使用期限を設定することは可能ですが、完全なものではないことを覚えておきましょう。

まとめ

擬似的ではありますが、Excelマクロ機能(VBA)を利用すれば、使用期限付きExcelファイルを作成できます。マクロの実行は、Excelを利用するユーザーごとに設定が変わるため、使用期限の設定をしても完全なものとはなりません。しかし、擬似的にでも使用期限を設けたい方は、ぜひ試してみてはいかがでしょうか。

(学生の窓口編集部)

関連記事

新着記事

もっと見る

HOT TOPIC話題のコンテンツ

注目キーワード

 ビジネス用語・カタカナ語80選

 キャリアロードマップの一歩目

  • ピックアップ