電子帳簿保存法(電帳法)大幅改正(2)「検索機能の確保」はExcelだけでOK!

前回ご説明したように、これまで電帳法に対応しなかったスモールビジネス・オーナーや個人事業主が、新たに制度へ対応する場合、ハードルのひとつに「検索機能の確保」があります。これは、電子保存した請求書や領収書などを、税務署員の求めに応じて開示できるよう、「日付」「金額」「取引先」で検索できるようにすることを指します。


そして、国税庁例示によれば、「検索機能の確保」は、下表のようなExcelシートを作ることで対応済となります。

画像引用:電子帳簿保存法一問一答【電子取引関係】問33


簡単とはいえ、取引すべてをこの一覧表にまとめていくことは、手間がかかりますよね。これまで「せるワザ!」シリーズでご紹介した省力化テクニックを駆使して、できるだけラクに資料作成をすませましょう。



入力をスマホですませたいならMforms


現金、PayPay支払の必要経費を、スマホとExcelでラクラク会計帳簿化」記事でもご紹介したように、手軽にExcel入力フォームを用意するなら、Microsoft Forms(Mforms)を利用するのが便利です。



こちらが、実際にMformsを使って「日付」「金額」「取引先」を入力するフォームを作成したものですが、予備知識がなくとも、3-5分程度で完成させることができました。













また、iPhoneやAndroidスマートフォンからもアクセス可能で、入力後は必要な項目をExcelで取り出すことができます。


Mformsから取り出した.xlsxファイルがこちら。


入力作業を、文字通り「片手間仕事」にしたいなら、Mformsを使うと、手早くすませることができます。



Excelで完結させたいなら、VBAで入力フォームを作りましょう



これも以前の記事でご紹介した、小口経費精算のために作ったExcel VBAの入力フォームは、項目を打ち変えるだけで、全く同じプログラムのまま、この一覧表の入力フォームとして使うことができます。


Sub electric_booking()

    Range("B4:E4").Select
    Selection.Copy

    Sheets("list").Select

   Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlValues

    Sheets("form").Select
    Range("B4:E4").ClearContents

End Sub


おすすめは、電子資料(保存ファイル)そのものの命名規則を変えてしまうこと


ここまでは、Excelの別表を用意して検索に備える方法でした。しかし、国税庁は「必ずExcel表を作りなさい」と指示しているわけではないのです。それほど難しくない資料作りであるとはいえ、件数が多くなれば、現物ファイルと別表の付け合わせが、手間になります。


そこでおすすめなのは、公認会計士/税理士の佐和周氏が、Web上で公開している「ファイルネームを変える方法」(※リンク記事の「(2)ファイル名の入力により検索機能を満たそうとする例」)です。つまり「日付」「金額」「取引先」が検索できれば良いだけなので、検索機能はWindows標準のエクスプローラに任せようというものです。

受け取ったままの請求書や領収書には、さまざまなファイルネームが付けられていますので、保存の時に、命名規則だけをExcel VBAでそろえましょう。


たとえば、メールソフトからダウンロードした電子資料が、バラバラの命名規則で、保存フォルダに格納されているとします。


これを、それぞれ[日付_取引先+資料種類_金額.拡張子]という命名規則に変更しましょう。


20210131_霞商店請求書_110000.pdf

20210210_国税工務店注文書_330000.pdf

20210228_国税工務店領収書_330000.pdf




これなら、エクスプローラから「日付」「取引先」「金額」での検索が可能になりますね。

具体的には、Excel VBAで、


(1)保存フォルダに格納されているファイルの、バラバラなファイル名をExcelに取り込む

(2)決められた命名規則に置きかえる


という作業をおこないます。



(1)ファイル名をExcelに取り込む作業


Sub Getname()

    Dim folder_path As String
    Dim Filename As String
    Dim i As Integer
    
            folder_path = Cells(1, 1) & "\"
            
            Filename = Dir(folder_path, vbNormal)
    
            i = 1
                    
                Do Until Filename = ""
    
                    Cells(i + 1, 1) = Filename
                    i = i + 1
    
                    Filename = Dir()
    
                Loop
End Sub