- ベストアンサー
エクセルでマクロ利用での出納帳作成の方法とは?
- エクセルでユーザーフォームから入力したデータをセルに転記する方法と、月ごとの合計や区分ごとの集計を行うマクロの作成方法を説明します。
- 月が変わった時に自動的に1行挿入し、その月の収入、支出、補助金額の合計を計算し、残高を入力するマクロの作成方法を説明します。
- 指定した月の区分ごとに集計した表を別シートに転記するマクロの作成方法を説明します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1 の回答者です(#1 というのは ナンバー1という意味です)。 >不慣れで質問の仕方がわかりにくくすみませんでした。 [お礼] の下の [補足する] ボタン を クリック すると、 質問者から回答者の方へ追加の質問をすることができます。 質問本文での説明に不足があった場合や、寄せられた 回答に対して新たに疑問が生じた場合にご活用ください。 とのことですので、前の回答をご覧になってお分かりにならないことがあるようでしたら、そちらから追加のご質問をしていただいても結構ですよ。 # この回答の2行目の行の先頭にある「>」は文章を引用 # するときに付ける マーク です。また、この行の先頭に # ある「#」は、本来、「コメント」、つまり、「挿入文」の先頭に # 付ける マーク ですが、こういう掲示板では、本題から外れた # コメント を書く時に、その先頭に付けていることが多いですね。 ちなみに、回答者の回答をご覧になって、問題が解決した場合は、 http://faq.okwave.jp/EokpControl?&site=guidePC&tid=1049154&event=FE0006 をお読みになって、質問を締め切ってください。
その他の回答 (1)
- DOUGLAS_
- ベストアンサー率74% (397/534)
こういうご質問のときには、お手許の ブック の「Private Sub CommandButton?_Click()」に書いてある コード をお示しいただいた方がよいかと存じますが、内容が分かりませんので、下記の コード をご覧いただいて、ご参考になさってください。 >(1)「月」がかわった時点で、自動的に1行挿入し、 >「収入」「支出」「補助金」のその月の合計、 >「残高」はその額をいれる 「簿記」の知識が皆無で、理解が間違っているかも知れませんので「ご参考までに」ということで。。。 とりあえず、各月の最初の行は「残高」を「0」にしております。 繰越残高で付けられる場合は、一番最後の myRng(7).Offset(1).Value = 0 の行は削除してください。 Option Explicit Dim myRng As Range Private Sub CommandButton1_Click() Set myRng = Cells(Rows.Count, 1).End(xlUp).Offset(1).Resize(, 8) With UserForm1 myRng(1).Value = Split(.TextBox1.Value, "/")(0) myRng(2).Value = Split(.TextBox1.Value, "/")(1) myRng(3).Value = .TextBox2.Value myRng(4).Value = .TextBox3.Value myRng(5).Value = .TextBox4.Value myRng(6).Value = .TextBox5.Value If myRng.Row = 4 Then myRng(7).FormulaR1C1 = "RC[-2]-RC[-1]" Else myRng(7).FormulaR1C1 = "=R[-1]C+RC[-2]-RC[-1]" End If myRng(8).Value = .TextBox6.Value If myRng.Row <> 4 And myRng(1).Value <> _ myRng(1).Offset(-1).Value Then Call 月度更新 End With End Sub Sub 月度更新() Dim myRow As Long myRng.EntireRow.Insert Set myRng = myRng.Offset(-1) If myRng(1).Offset(-2).Value = "" Then myRow = 1 Else myRow = myRng(1).Offset(-1).End(xlUp).Row - 1 End If If myRow = 2 Then myRow = 3 myRng(4).Value = myRng(1).Offset(-1).Value & "月合計" myRng(5).FormulaR1C1 = "=SUM(R[-" & myRow & "]C:R[-1]C)" myRng(6).FormulaR1C1 = "=SUM(R[-" & myRow & "]C:R[-1]C)" myRng(7).FormulaR1C1 = "=R[-1]C" myRng(8).FormulaR1C1 = "=SUM(R[-" & myRow & "]C:R[-1]C)" myRng(7).Offset(1).Value = 0 End Sub >(2)D列の会計区分を・・・までの数字で種別しています。 >指定した月集計(例:4月から9月まで)での区分ごとに >集計した表を別シートに転記する これは「マクロ」ではなくて、標準のワークシート関数でお考えになった方が間違いがないかと存じます。
お礼
早速の回答ありがとうございます。 不慣れで質問の仕方がわかりにくくすみませんでした。 教えて頂いた内容を試してみます。 ありがとうございました。