名称未設

【ExcelVBA公開模試】紙幣または硬貨の枚数を求める

文法を無視して、とりあえず動けばいいという邪道ExcelVBA講座こと「速読VBA単語」に準拠した問題を出題します。

問題

図1のようにA列に金額がランダムに入力されている。支払う時に必要な紙幣または硬貨の枚数を、セルB2以降に求めようとしている(図2)。次のコードを完成させなさい。ただし、セルA2から処理をはじめて空白になったら終了する。また、2000円札は考慮しないものとする。

Sub moshi()
   kinshu = Array(10000, 5000, 1000, 500, 100, 50, 10, 5, 1)
   kinshu_max = UBound(kinshu)

   Do While Cells(i, 1) <> ""


   Loop
End Sub

<図1>

<図2:完成イメージ>

わえなび式 正解例

(このページの下にあります)

目標回答時間

プロ2分以内、アマチュア10分以内に処理ができたら合格

この問題の出題範囲

「速読VBA単語」Program3-9まで

ご案内

ExcelVBAをなんとなく理解できればいいという初心者のための「速読VBA単語」を受講希望の方はカリキュラムをご覧ください。

正解例

Sub moshi()
   kinshu = Array(10000, 5000, 1000, 500, 100, 50, 10, 5, 1)
   kinshu_max = UBound(kinshu)
   i = 2
   Do While Cells(i, 1) <> ""
       shiharai = Cells(i, 1)
       For j = 0 To kinshu_max
           Cells(i, j + 2) = shiharai ¥ kinshu(j)
           shiharai = shiharai Mod kinshu(j)
       Next
       i = i + 1
   Loop
End Sub

バックナンバー


この記事が気に入ったらサポートをしてみませんか?