一石二鳥で時間に余裕が!――面倒くさい見積書や請求書などの書類を自動作成するマクロとは働く価値を上げる“VBA/GAS術”(5)(2/3 ページ)

» 2017年11月28日 05時00分 公開
[高橋宣成プランノーツ]

領収書作成マクロ

 領収書リストと領収書ひな型を準備した上で、以下にリストにある参加者の分だけ領収書を自動で作成するマクロを記します。

Sub 領収書作成()
Dim wb As Workbook
Set wb = Workbooks.Open(ThisWorkbook.Path & "\領収書ひな型.xlsx")
Dim ws As Worksheet
Set ws = wb.Worksheets(1)
Dim i As Long
For i = 2 To 4
    
    'データの作成
    With Sheet1
        Dim name As String '姓 名
        name = .Cells(i, 1).Value & " " & .Cells(i, 2).Value
        
        Dim description As String '品目
        description = "但 " & .Cells(i, 3).Value & " として上記領収致しました。"
        
        Dim amount As Long '金額
        amount = .Cells(i, 4).Value
    End With
    
    'データを転記
    With ws
        .Range("A4").Value = name & " 様"
        .Range("B9").Value = description
        .Range("C7").Value = amount
    End With
    
    'ブックを別名で保存
    Dim wbName As String
    wbName = ThisWorkbook.Path & "\領収書(" & name & ").xlsx"
    wb.SaveAs wbName
Next i
wb.Close
End Sub

 Subプロシージャ「領収書作成()」を実行すると、マクロを記述しているExcelマクロファイルと同じフォルダに、リストにある3人分の領収書ファイルが作成されます(図3)。

図3 マクロで作成した領収書ファイル

 領収書ファイルの1つを開いてみると、必要事項がリストから転記されていることを確認できます(図4)。

図4 作成した領収書シート

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。