- ベストアンサー
前月度との期間比較
アドバイスお願いします。 例えば会計ソフトの前月度と当月度のデータをエクセルに 落として期間比較をしたい場合に… 実際には前月と当月とでは存在する項目と存在しない項目とあった 場合に自動で共通項目を比較する関数や処理方法は存在しますでしょうか。 できれば会計ソフトから期間比較まで自動化できればと思います。 私は、VBAの知識がありませんが これができるとこういった処理も簡単に行えるのでしょうか。 事務や経理などでVBAはどの程度活躍してくれるのでしょうか。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
◆ANo.2さんの表をお借りしまして B2=SUMIF(OFFSET(Sheet1!$A$1:A100,1,MATCH(B$1,Sheet1!$1:$1,0)-1),$A2,OFFSET(Sheet1!$A$1:A100,1,MATCH(B$1,Sheet1!$1:$1,0))) ★右と下にコピー
その他の回答 (2)
- ham_kamo
- ベストアンサー率55% (659/1197)
No.1です。補足拝見しました。 10月 11月 商品A 商品A 商品C 商品B とありますが、当然これは商品名だけでなく、商品の個数とか売上高とかのデータが当然あるのですよね。 やり方にもよりますが、たとえばシートのレイアウトが、 A列 B列 C列 D列 10月 11月 行1 商品A 20 商品A 10 行2 商品C 20 商品B 30 というようになっていて、シート名がSheet1の場合、別に比較用のシートを作っておき、そのシートのレイアウトを A列 B列 C列 行1 10月 11月 行2 商品A 行3 商品B 行4 商品C : : (以上全ての商品名を列挙) というようにしておき、上のシートのB2に、 =IF(ISNA(VLOOKUP($A2,OFFSET(Sheet1!$A$2,0,(COLUMN()-2)*2,COUNTA($A:$A)+1,2),2,FALSE)),"",VLOOKUP($A2,OFFSET(Sheet1!$A$2,0,(COLUMN()-2)*2,COUNTA($A:$A)+1,2),2,FALSE)) という式を入れて、縦横にドラッグしてコピーすれば、同じ商品どうしが同じ列で比較できます。 関数でやるとこれだけ大変ですが、VBAなら割と簡単です。 >VBAの基本書は入門と書かれてあるものから >読んで見るとよいでしょうか? そうですね、「はじめての」とかつく名前の本から始められるといいかと思います。
- ham_kamo
- ベストアンサー率55% (659/1197)
>実際には前月と当月とでは存在する項目と存在しない項目とあった >場合に自動で共通項目を比較する関数や処理方法は存在しますでしょうか。 エクセルに落とした場合のデータの形式によりますが、関数だけで処理するのは難しいができるかもしれませんし、VBAが必要かもしれません。簡単な例があれば、もう少し具体的にアドバイスできるのですが。VBAを使えばたいていのことはできます。 >私は、VBAの知識がありませんが >これができるとこういった処理も簡単に行えるのでしょうか。 処理自体は作ってしまえば簡単に行えるでしょう。ただVBAを覚えて実際に作るのは、最初はちょっと苦労するかもしれません。 >事務や経理などでVBAはどの程度活躍してくれるのでしょうか。 どの程度、というのは使い手しだいだと思います。VBAでいろんな処理を書けるのであれば、相当役立ちます。
補足
ありがとうございます。 例なんですが… 10月 11月 商品A 商品A 商品C 商品B とエクセルで並べた場合に必ずしも同じ行に同じ項目がないので 単純に数式をいれて項目の期間比較ができないので 11月と10月を同じ項目で並び替えた段階で期間比較ができる ようにしたいのです。 VBAの基本書は入門と書かれてあるものから 読んで見るとよいでしょうか?