Excelデータ→Excel請求書・Excel請求書→Excelデータ

  • URLをコピーしました!

Excelで請求書を作る場合は、
・請求書をデータにする
・データを請求書にする
ことを考えると、効率的に処理できます。
追記:Misocaは弥生に買収され有料となり使いにくくなりました。

IMG 8639
※ヴィーナスフォートにて iPhone 7 Plus

Excelで請求書を作るなら、データにすることを考える

Excelでこういった請求書を作ることもあります。
EX IT

ただ、Excel請求書のままだと、不便です。

・今月の請求金額合計=売上合計が一目でわからない

という問題があります。

結局は、
・Excel請求書を見ながら、売上を入力する
・プリントアウトした請求書を見ながら売上を入力する
といったことをせざるを得ません。

請求した金額=売上は、入金されているどうかのチェックも必要です。
そのチェックも請求書のままだと手間がかかります。

また、会計ソフトへも入力しなければならず、請求書を見ながら会計ソフトに入力する二度手間も発生してしまうのです。

売上の分析、
・どんな商品が売れていて
・どんなお客様が買ってくれていて
・今後その売上に力を入れていくべきかどうか
などをやるひまなど到底ありません。

こういったデータの形式なら、合計を出すことも、入金管理することも、会計ソフトに取り込むことも、分析することもできます。
EX IT 2

こういった請求書の形式では、ダメなのです。
紙の請求書、手書きの延長上でしかありません。
EX IT

Excelで請求書を作るなら、データのことも考えましょう。

方法は2つあります。

1つは、Excelデータから請求書を作る方法
もう1つは、Excel請求書からExcelデータを作る方法
です。

Excelデータ→Excel請求書

ExcelデータからExcel請求書を作る方法。
Excelマクロを使います。

EX IT 3

マクロを使わないと、コピー・貼り付けを請求書の数だけやらなければいけません。

こういったマクロを使います。
※実際には、
・別のファイルに請求書を作成
・選択した部分または指定した範囲、すべてのデータで請求書を作成
・請求書をPDFファイルで保存
・顧客データを作っておき、住所等はそこから読み込む
といった処理を追加することが多いです。

Sub makeinvoice()


    Dim i
    For i = 2 To 11 '2行目から11行目まで繰り返す
        
        '■ひな形のコピー
        Worksheets("master").Copy after:=Worksheets(Worksheets.Count)
        
        Range("e1").Value = Worksheets("data").Range("a" & i).Value '請求書NO
        Range("a5").Value = Worksheets("data").Range("b" & i).Value & " 御中" '会社名
        Range("e6").Value = Worksheets("data").Range("c" & i).Value '請求日
        Range("e13").Value = Worksheets("data").Range("d" & i).Value '支払期限
        Range("b25", "e25").Value = Worksheets("data").Range("e" & i, "h" & i).Value '区分から金額
        
        '■シート名の変更
        ActiveSheet.Name = Worksheets("data").Range("b" & i).Value
        
    
    Next

End Sub

ひな形である、シート「master」をコピーして、そのシートのセルE1に、データの2行目の請求書ナンバー(セルA2)を入れます。
EX IT 6

これを2行目から11行目まで繰り返すという処理です。

サンプルで動きを確認してみていただければ。
■サンプルファイル
EX-ITサンプル 請求書作成マクロ.xlsm
2回目に実行しようとすると、請求書がすでに作られているためエラーが出ます。
同じ名前のシートは作れないからです。
再度実行するには、Excel請求書のシートを削除する必要があります。

マクロについてはこちらの記事も参考にしてください。
【関連記事】Excelマクロを実行する4つの方法。ショートカットキー・ボタン
リンク

【関連記事】ネット上のExcelマクロを自分のファイルに流用する方法
リンク

Excel請求書→Excelデータ

もう1つの方法は、Excel請求書を普通に作り、データを集約します。

EX IT 4

注意すべきなのは、Excel請求書は同じ形式で作ることです。
あるシートは、セルE6に日付があり、あるシートは、セルF6に日付があると、正しく集約できません。
こういったフォーマットを整えることもExcelで効率化するには必須なのです。

次のようなマクロを使います。

Sub merge_invoicedata()

    '■データ読み取り位置を設定。2行目から
    Dim n
    n = 2
    
    '■シート「data」以外のすべてのシートで実行
    Dim w
    For Each w In Worksheets
        
        If w.Name <> "data" Then
            
                
            Worksheets("data").Range("a" & n).Value = w.Range("e1").Value '請求書NO
            Worksheets("data").Range("b" & n).Value = Replace(w.Range("a5").Value, "御中", "") '会社名
            Worksheets("data").Range("c" & n).Value = w.Range("e6").Value '請求日
            Worksheets("data").Range("d" & n).Value = w.Range("e13").Value '支払期限
            Worksheets("data").Range("e" & n, "h" & n).Value = w.Range("b25", "e25").Value '区分
        
            n = n + 1
        
        End If
    
    
    Next
    
    


End Sub

すべてのシートに対して、処理するのは、

    Dim w
    For Each w In Worksheets



	Next

ただし、シート「data」は除きますので、

	If w.Name <> "data" Then

	End if

というIFの処理を入れています。

あとは、転記する処理を繰り返すだけです。

EX IT 7

nというのは、a2、a3、・・・・a11とデータを入れる場所を1つずつずらしていきたいので、n=n+1の部分で処理しています。

入力のしやすさ、処理のしやすさを考えると、Excelデータ→Excel請求書のほうがおすすめです。
EX-ITサンプル 請求書集約マクロ.xlsm

Excelマクロを使わないのであれば、Excel自体を捨てる手もあります。

クラウド、ネット上で請求書を作れるMisoca(みそか)
なら、請求書の形式で入力して、

EX IT 8

データでダウンロードできるので便利です。

EX IT 10

データを作るだけPDFで発行するだけなら無料、1通180円で郵送(印刷、封入、投函等)もやってくれます。
私も、愛用しているサービスです。

ただ、請求書の形式で入力するのはめんどくさいので、Excelでデータを作り、それを取り込んでいます。

2013年の記事
【関連記事】ネットで請求書を作成・郵送できるmisoca。8つのいい点・8つの気になる点
リンク

2014年の記事
【関連記事】クラウド請求書サービスを比較!Excel(CSV)一括取込、郵送するならMisoca
リンク

なんらかの方法でデータにする方法を考えてみましょう。





【編集後記】

昨日は個別コンサルティングで、訪問。
大好物の経理効率化についてでした。

久々に晴れたので、自宅から10kmをクロスバイクで。
秋葉原UDX駐輪場(6時間150円)もはじめて利用してみました。

【昨日の1日1新】
※詳細は→「1日1新」

クロスバイクで秋葉原
秋葉原UDX駐輪場
煮干しラーメン凪→普通かなぁ・・
スタバ ヴィーナスフォートグランド店

  • URLをコピーしました!