- ベストアンサー
他のシートから引用した数値を表示する方法
- 他のシートから引用した数値を使い、特定の条件に基づいて情報をまとめて表示する方法について教えてください。
- ブック内の複数のシートから注文情報を取得し、特定の商品の合計数や重量を算出して表示する方法について教えてください。
- 山田さん、佐藤さん、鈴木さんからの注文情報を取得し、のり、シャケ、焼きそばの個数やグラム、ケース数を合計して表示する方法について教えてください。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
エクセルで、「A行」なんて紛らわしい表現をしているところを見ると、エクセルの初心者で、この問題を、データ入力段階から、適切に設計できるかどうか疑わしい。商品の単位についての説明はあいまいにしたままなのも、それをうかがわせる。 また関数しかできない状況でもあるだろうが、関数でも、回答丸写ししかできず、難しいと思う。 エクセルのシートの表の組み換えは、関数ではむつかしいのだ。 それもあって、下記はVBAでやってみた。 ーー 本件についての、 私の考えを、下記に参考に述べる。考える気があれば読んでください。 商品を、個で売るもの、重量計り売り,ケース売りなど、単位の違うものは、商品を別に分けないと、扱いがむつかしいと思う。 システムに詳しいひとが、周りにいれば聞いてみたら。 こういうことこそ、正解が1つではない惧れもあり、本当の難しさで、関数の組み合わせ技巧ではない。 後から加工の段階で、関数がむつかしくなって、質問するよりも、シート項目の設計や入力の前によく考えることだ。どうすれば簡単になるかは、経験を積むしかない。 分類は下記のように考えた。 山田シートで 商品 個数(A列とB列データ)数字が個数 のり弁 6 シャケ弁個売 8 シャケ弁ケース売り 11 やきそば個数売り500g 2 やきそば個数売り800g 4 ーー 佐藤シートで 商品 個数(A列とB列データ)数字が個数 商品 個数 のり弁 1 シャケ弁個売 2 シャケ弁ケース売り 3 やきそば個数売り500g 1 やきそば個数売り800g 2 鈴木シート 商品 個数 のり弁 1 シャケ弁個売 1 シャケ弁ケース売り 2 やきそば個数売り500g やきそば個数売り800g 1 という設計にする。 ーー そしてVBAだが、標準モジュールに Sub test02() Set sh2 = Worksheets("集計") sh2.Range("A2:H10000").Clear k = 2 For Each sh In Worksheets If sh.Name <> "集計" Then '集計の名のシートは対象外 MsgBox sh.Name lr = sh.Range("A10000").End(xlUp).Row For i = 2 To lr x = sh.Cells(i, "A") 'shシートのA列商品名 Set fc = sh2.Range("A2:A10000").Find(x) '集計シートA列でxの存在行を見つける If fc Is Nothing Then '新規 sh2.Cells(k, "A") = x '商品名 'c = sh2.Cells(k, 10000).End(xlToLeft).Column sh2.Cells(k, "B") = sh.Cells(i, "B") '個数 k = k + 1 Else '既存で見つかった c = sh2.Cells(fc.Row, 10000).End(xlToLeft).Column sh2.Cells(fc.Row, "B") = sh2.Cells(fc.Row, "B") + sh.Cells(i, "B") '件数足しこみ End If Next i End If Next End Sub ーー 結果 集計シートは 商品 個数 のり弁 6 シャケ弁個売 8 シャケ弁ケース売り 11 やきそば個数売り500g 2 やきそば個数売り800g 4 上記プログラムを変えれば、商品ごとで1行、販売先ごとの多列表にも、簡単に変えられる。
その他の回答 (6)
- bunjii
- ベストアンサー率43% (3589/8249)
- msMike
- ベストアンサー率20% (364/1804)
合計!B2: =山田さんの注文!B2+佐藤さんの注文!B2+鈴木さんの注文!B2
- SI299792
- ベストアンサー率47% (772/1616)
マルチポストです。 どちらかは、締切ましょう。
- SI299792
- ベストアンサー率47% (772/1616)
多分こういうことだと思います タイトルを付けたので、変わります。 2行:のり弁 3行:シャケ弁 4行:焼きそば B列:個数 C列:グラム D列:ケース https://box.yahoo.co.jp/guest/viewer?sid=box-l-bahport3hkq3a2qccdcvb63m3e-1001&uniqid=649868ad-ed20-4aaf-927d-871a9a291f19&viewtype=detail もし、3人でなく、人がどんどん増えてゆくなら、マクロが必要になります。
- skydaddy
- ベストアンサー率51% (388/749)
- bunjii
- ベストアンサー率43% (3589/8249)
用語を正しく使わないと状況が分かりません。 「A行:のり弁、B行:シャケ弁、C行:焼きそば」等のA、B、Cは列記号なのでA行、B行、C行はありません。 各シートの名前やデータの配置の状況が分かりません。 従って、回答が困難です。