領収書リストと領収書ひな型を準備した上で、以下にリストにある参加者の分だけ領収書を自動で作成するマクロを記します。
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)。
領収書ファイルの1つを開いてみると、必要事項がリストから転記されていることを確認できます(図4)。
「計算式エラーで残業確定……」、GASで入力データのチェックツールを作成
Excelデータの入力不備で計算エラーが発生して家に帰れない!――入力規則よりも簡単なチェックマクロとは
さらば残業! 面倒くさいエクセル業務を楽にする「Excel VBA」とはCopyright © ITmedia, Inc. All Rights Reserved.