• ベストアンサー

マクロ初心者です。複数のシートを一覧に反映させたいのですが。

すみません。どなたか教えてください。 複数の請求書シートがあり、項目を入力すると、 先頭の一覧シートに項目が反映されるように作成したいのですが、 マクロで作成する方法ありますでしょうか? 一覧には複数シートの合計金額もわかるように作りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.3

下記の状態ならこんな感じかと。 Sub test()  Dim WS1 As Worksheet  Dim WS As Worksheet  Dim i As Integer  Dim r As Range  Set WS1 = Worksheets("Sheet1")  Set r = WS1.Range("A1")  For i = 2 To Worksheets.Count   Set WS = Worksheets(i)     With WS       r.Value = .Range("D5").Value       r.Offset(, 1).Value = .Range("A3").Value       r.Offset(, 2).Value = .Range("F7").Value     End With   Set r = r.Offset(1)  Next End Sub

riririco
質問者

お礼

わかりにくい質問にお答えいただきありがとうございます! 参考にさせていただきます!

その他の回答 (2)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.2

”請求書”として印刷できるレイアウトをもったシートが複数有り、 そこから1つの”一覧”シートに纏めたいと言う事でしょうか? 質問者さんはシートを目の前に悩んでいると思いますが、 シートの見えない方は情報からしか検証・判断・アドバイスが 出来ないですよ。 例えばこちらにあるように、 【Excel:条件付き文字列の結合方法】 http://okwave.jp/qa3304401.html どのようなものを、どのようにしたいのか、シートレイアウトが 明確でないと回答は難しいと思いますよ。

riririco
質問者

お礼

>”請求書”として印刷できるレイアウトをもったシートが複数有り、 そこから1つの”一覧”シートに纏めたいと言う事でしょうか? はい。そんなかんじです。 質問も書き直してみます。 請求書(Sheet2)     A列   D列  F列 3行目 社名 5行目     日付 7行目         金額 ↑こんなかんじでいくつか項目を入力していく請求書のフォームを 作り、Sheet3~Sheet20くらいコピーした状態です。 Sheet1を一覧表というシート名にして、      A列      B列      C列 1行目 Sheet2の日付  Sheet2の社名  Sheet2の金額 2行目 Sheet3の日付  Sheet3の社名  Sheet3の金額  ・  ・ 20行目くらいまで続く・・ 21行目               Sheet2からSheet21までの                      合計額 みたいな表にしたいのですが・・。 やっぱりまだわかりにくいですよね。。すみません。

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

>マクロで作成する方法ありますでしょうか? マクロで出来るかどうかの判断をするには、かなり難しいと思います。 シートレイアウト・項目の入力方法・項目の反映(抽出・検索etc)・ 合計金額の表示位置等々不明な点があります。

riririco
質問者

お礼

わかりにくくてすみません。 例えばシート1のA3には社名、D5には日付、F7に金額を入力できる フォームをエクセルで作ってみたのですが、 エクセルの一覧の式(=’シート1’!A3)にするより、 マクロを使って、各シートに入力したものを先頭の一覧シートに、 うまく連動させて、1ケ月分の合計も見れる表ができれば助かるのですが・・。VBAの本を見てもよくわからなくて。

関連するQ&A