• 締切済み

エクセルで学年会計簿を作りたい。

学校で使う会計簿を作りたいと思っています。 シートが全部で4枚あり、シート1は「1学期」、シート2は「2学期」、シート3は「3学期」、 シート4は「会計報告書」というのをイメージしています。 シート1~3に関しては何とか作れているのですが、 最後にシート1~3のデータを抽出して、シート4に自動で移す所で戸惑っております。 例えばシート1の1学期の支出は以下のようになっていたとします。     項目        金額 国語テスト(1学期)    \280 算数テスト(1学期)     \280 計算ドリル(上)       \450 理科教材(豆電球)     \120 社会科資料集      \580 そしてシート2の2学期の支出は以下のようになっていたとします。     項目        金額 国語テスト(2学期)    \280 算数テスト(2学期)     \280 計算ドリル(下)       \450 理科教材(インゲン豆)   \160 図工教材(紙粘土)    \280 そしてシート3の3学期の支出は以下のようになっていたとします。     項目        金額 国語テスト(3学期)    \280 算数テスト(3学期)     \280 家庭科調理実習費     \180 理科教材(電池)       \100 図工教材(版画)      \320 そして、最後のシート4「会計報告書」には、シート1~シート3までの支出一覧を表にまとめたいのです。 その時の希望の形は添付画像の通りです。 『国語テスト(1学期)\280』や『国語テスト(2学期)\280』を『国語テスト(1~2学期) \560』 といった具合にまとめられるものはまとめ、 『社会科資料集 \580』のように1年間で1回しか買う必要が無いまとめられない物は、 そのまま会計報告書の支出欄に掲載できるようにしたいと思っています。 シート1~シート3までの入力さえきちんと行えば、自動的にシート4の会計報告書が出来上がる。 そんなことは可能でしょうか? セルの位置は特に決まっていません。 あと、作業シートを設けることも問題ありません。 お知恵を貸して頂けると助かります。 どうぞ、よろしくお願い致します。

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! VBAでの一例です。 ↓の画像のように左側がSheet1~Sheet3のセル配置、そしてSheet4は右側のように 3行目が項目行になっているという前提です。 Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面に ↓のコードをコピー&ペースト → Excel画面に戻りマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sample1() 'この行から Dim i As Long, k As Long, cnt As Long, endRow As Long Dim c As Range, str As String, buf As String, wS As Worksheet, wSs As Worksheet Worksheets.Add after:=Worksheets(Worksheets.Count) Set wSs = Worksheets(Worksheets.Count) With Worksheets(4) On Error Resume Next Application.ScreenUpdating = False endRow = .Cells(Rows.Count, "A").End(xlUp).Row If endRow > 3 Then Range(.Cells(4, "A"), .Cells(endRow, "B")).ClearContents End If cnt = 3 For k = 1 To 3 Set wS = Worksheets(k) For i = 2 To Worksheets(k).Cells(Rows.Count, "A").End(xlUp).Row If InStr(StrConv(wS.Cells(i, "A"), vbNarrow), "(") > 0 Then str = Left(wS.Cells(i, "A"), InStr(StrConv(wS.Cells(i, "A"), vbNarrow), "(") - 1) Else str = wS.Cells(i, "A") End If If WorksheetFunction.CountIf(wSs.Range("A:A"), str) = 0 Then cnt = cnt + 1 wSs.Cells(cnt, "A") = str End If Next i Next k wSs.Range("A:A").Replace what:="(", replacement:="", lookat:=xlPart For i = 4 To wSs.Cells(Rows.Count, "A").End(xlUp).Row For k = 1 To 3 Set wS = Worksheets(k) Set c = wS.Range("A:A").Find(what:=wSs.Cells(i, "A"), LookIn:=xlValues, lookat:=xlPart) If Not c Is Nothing Then If InStr(c, "(") > 0 Or InStr(c, "(") > 0 Then cnt = InStr(c, "(") + 1 str = Mid(c, cnt, Len(c) - cnt) buf = buf & str & "・" .Cells(i, "B") = .Cells(i, "B") + c.Offset(, 1) Else .Cells(i, "A") = wSs.Cells(i, "A") .Cells(i, "A").Offset(, 1) = c.Offset(, 1) End If End If Next k .Cells(i, "A") = wSs.Cells(i, "A") & vbCrLf & "(" & Left(buf, Len(buf) - 1) & ")" buf = "" Next i .Cells(Rows.Count, "A").End(xlUp).Offset(2) = "支出合計" .Cells(Rows.Count, "B").End(xlUp).Offset(2) = WorksheetFunction.Sum(.Range("B:B")) .Range("A:A").ColumnWidth = 100 .Columns.AutoFit End With Application.DisplayAlerts = False wSs.Delete Application.DisplayAlerts = True Application.ScreenUpdating = True End Sub 'この行まで ※ 関数でないので、データ変更があるたびにマクロを実行する必要があります。 ※ 1行・1列でもレイアウトが違うとまったく意図しない動きになりますので、 画像通りの配置でマクロを試してみてください。m(_ _)m

soulset319
質問者

お礼

お礼が遅すぎて、申し訳ございませんでした。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.2

>シート1~シート3までの入力さえきちんと行えば、自動的にシート4の会計報告書が出来上がる。 >そんなことは可能でしょうか? 可能です。 一番簡単な方法は総計用のSheet4と同じフォーム(同じ項目のシート)を1年~3年まで用意します。 学年によっては不要な行もありますがそのセルを空欄にします。 3枚のシートを串刺し集計すれば総計のシートへ反映します。 Sheet4のみ画像を添付します。 =SUM(Sheet1:Sheet3!B4)

soulset319
質問者

お礼

お礼が遅すぎて申し訳ございませんでした。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
noname#192382
noname#192382
回答No.1

Sub Macro2() ' ' Macro2 Macro ' マクロ記録日 : 2014/2/5 ユーザー名 : ' Dim i As Integer, j As Integer, myarray(8) As Variant どのシートも第2行めから下に国語、算数、計算問題、理科、社会科、図工、家庭科をいれることにし、そしてだい4シートは第2列から第4列に1学期から3学期のデータを入れることにします。しーと1からしーと3まではデータは第2列に入れることにします。 次のマクロを実行すると、シート4に学期別の各科目の経費がこぴーされますので、後は手動でシート関数を使い合計を出してください。 For j = 1 To 3 For i = 2 To 8 Worksheets(4).Cells(i, j + 1) = Worksheets(j).Cells(i, 2) Next i Next j ' End Sub

soulset319
質問者

お礼

お礼が遅すぎて申し訳ありませんでした。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 小学校低学年から学びなおしたい

    小学校低学年から学びなおしたい 私は、中卒で高認の資格をとろうとしている者です。 大の勉強嫌いで小学生からサボっていて、最近になってこれじゃいけないなと思い小学校から勉強やりなおしたいです。 他にもこういう質問がいくつかあり、拝見させて頂きましたが 私は、塾やそろばんなどには通えません。なので、本屋さんで買えるもので何か良い教材やドリルがあったら教えてください。 中学の数学をやろうと思っても、小学校の算数ができないので…。 九九はできるのですが、恥ずかしながら低学年で学ぶ簡単な暗算でさえもできなくて 指を使って計算しています。 百ます計算ドリルなんかいいかなと思っているのですが、 分数や少数、割合や比例など…も勉強したいので ただひたすら説いていく問題集よりも、 "なぜこうなるのか"が詳しく解説が載っている教材が欲しいです。 (近くの本屋ではピンとくるものでなくて…) 漢字は中1くらいまでしか読み書きでないので 漢字ドリルでは何か良いのがありましたら教えてください。 小学生のときに使うポチタマやトムとジェリーが表紙のカドとケド(漢字ドリル、計算ドリル) 知っている方いますか? あれは、すごく分かりやすくて好きでした。 カドケドに似たドリルがあればいいのに…。 あと、社会公民や理科も何かおススメがあればぜひお願いします。

  • 小学生低学年の副教材

    小学1年と3年の子供がいます。 これまで、宿題やテストの復讐だけは確りとやらせているだけだったせいか、成績がそれほど伸びません。特に国語と算数については、休日などに子供と一緒に勉強の時間を作って、何かほかの教材をやらせようかと考えています。 お勧めの教材があれば教えて頂けないでしょうか。 宜しくお願い致します。

  • 小学5年生の算数の平均の問題

    子供に算数の問題の解き方を聞かれましたが、全く解らず困っています(;_;) 解る方がいらっしゃるなら教えてください。 問題 国語と算数と理科のテストをしました。 国語と算数と理科のテストの平均は82点です。 国語と算数のテストの平均は80点です。 算数と理科のテストの平均は85点です。 問題 (1)理科は何点でしょうか? (2)国語は何点でしょうか? (3)算数は何点でしょうか? と言う問題です。 よろしくお願いします。

  • 算数の問題です。

    かずやさんは、国語・算数・理科・社会の4つのテストを受けました。 どれも100点満点のテストです。 国語・算数・理科の平均点は国語の点より2点高く、国語・理科・社会の平均点は国語の点より6点低いとき、算数の点は社会の点より何点高くなりますか。   問題集の1問で、解説には、  (国語+算数+理科)-(国語+理科+社会)の点の差、つまり、算数と社会の点の差です。  2×3+6×3=24(点) とあります。どうしてこうなるのか、くわしく解説頂ける方、よろしくお願いします。

  • 息子の宿題

    小5の算数の宿題で、恥ずかしながらどーしてもわからない問題があるので回答よろしくお願いします。 ”国語、社会、算数、理科のテストをしました。国語、社会、理科の3つのテストの平均点は86点ですが、算数を入れた4つのテストの平均点は85点になります。算数の点数は何点でしょうか。”

  • 平均

    小学生の問題です。 かずやさんは国語、算数、理科、社会の4つのテストを受けました。どれも100点満点のテストです。 国語、算数、理科の平均点は国語の点より2点高く、国語、理科、社会平均点は国語の点より6点低い時、算数の点は社会の点より □点 高くなります。 求め方を教えて下さい。

  • 学年1位になりたい!

    北海道在宅の中2です、 8月31日に学力テスト(業者テスト)があります。 今、私は学級2位、学年4位です、 学年1位の人が私のクラスにいます、 だから、学級1位になりたいんだったら、 結果的には学年1位を目指すことになります。 この3人はみんな塾通いで、学力テスト対策は 万全軍団です、1人抜くのも難しい。 そんななか、私は塾にも行かず、ゼミ、通信教材等は 一切とっておらず、市販の問題集一本です。 学年1位になりたいんだったらただでさえ難しい 学力テストで470点以上が絶対条件となってきます・・・ そこで学年1位をとるために知恵をお貸しください! 今の学テの勉強法は、 国語 ・暇なときは読書 ・漢字の書き取りテスト(小1~中2までの範囲をランダムで) を1日1回行う ・今までこつこつと書いてきた まとめノートで色々確認する(赤いシートも使う) ・学力テスト対策用の問題集をやる 数学 ・とにかく問題を解きまくる(1日最低でも50問) ・間違えたものは、問題集にしるしをつけ、 ノートに解き方を詳しく書いておく。 ・今までこつこつと書いてきた まとめノートで色々確認する(赤いシートも使う) ・学力テスト対策用の問題集をやる 英語 ・教科書暗記する ・教科書音読 ・単語テスト(全40問)を1日1回 ・教科書の文、丸々いらない紙に書いてみる ・今までこつこつと書いてきた まとめノートで色々確認する(赤いシートも使う) ・学力テスト対策用の問題集をやる 理科&社会 ・とりあえず問題集を数多くこなす ・学力テスト対策用の問題集をやる ・今までこつこつと書いてきた まとめノートで色々確認する(赤いシートも使う) ・理科の計算については、計算練習を少しだけやって 公式をしっかり覚えとく こんな感じです。 学年1位になって運動が出来ないことをカバーしたいです! ・・・運動は駄目だけど勉強はできる・・・みたいな。 くだらないと思いますが、回答お願いします! これだけやっても強い塾3人集に勝ってみたいです!

  • 五年生の宿題で困ってます

    息子の算数の平均の問題です。教えてください。 国語と算数と理科のテストをした 3教科の平均点は82点 国語と算数の平均点は 80点 算数と理科の平均点は85点 国語と算数の合計点は何点か? 算数と理科の合計 点は何点か? 理科は何点か? 国語は何点か? 算数は何点か? と言う問題を子どもにどう教えたらいいか困ってます。 よろしくお願いします

  • 親もわかりながら子どもと勉強できる方法

    5年生です。 子供の成績が悪いです。 普段勉強は全くしません。 その為、親としては最低宿題とテスト勉強だけでも頑張ってやって欲しいと努力しています。 今は一緒に勉強するようにしていますが、 親も解けない時があります。 特に算数の問題です。 基礎はわかりますが、応用問題になると解き方がわからなくなります。 本屋さんで「文章の例題集」や「わかる算数」の本を購入しましたが、 基礎は載っていますが応用の説明が載っていません。 子供と一緒に勉強ができる、 教科書に対応しているプリント、ドリル、ネット、通信とか教えてください。 できれば詳しく解説がついてたら助かります。 親も一緒に解ける内容で。 国語、算数、社会、理科のテスト対策の為の教材なども教えてください。 アドバイスなど宜しくお願いします。

  • エクセルでの集計・・・再度です

    お世話になります。 エクセルでの集計につきまして 思っていたよりも複雑でわからないため、 再度質問させていただきました。 内容 名前 教科名 順位  田中 国語  8 佐藤 算数  5 鈴木 理科  1 山田 国語  2 田中 算数  3 佐藤 算数  4 田中 国語  1 佐藤 理科  2 鈴木 算数  8 田中 理科  11 という感じで、名前・教科・順位の羅列が並んでいます。 同じ生徒がどの教科で、順位がどうであったかを集計したいのです。 ちなみに、もし可能ならば集計時に 1番、2番、3番、4番以下 という風にできればいいなと思っています。 ピポットテーブルを使用すると良いと お伺いしたのですが、この場合でも可能でしょうか? どうぞよろしくお願いします。

専門家に質問してみよう