Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6663 / 13644 ツリー ←次へ | 前へ→

【43914】オートフィルで抽出したデータを1件だけコピーするには? 陸遜 06/10/29(日) 18:38 質問[未読]
【43915】Re:オートフィルで抽出したデータを1件だ... かみちゃん 06/10/29(日) 18:50 発言[未読]
【43918】Re:オートフィルで抽出したデータを1件だ... 陸遜 06/10/29(日) 19:15 質問[未読]
【43922】Re:オートフィルで抽出したデータを1件だ... かみちゃん 06/10/29(日) 20:00 発言[未読]
【43923】Re:オートフィルで抽出したデータを1件だ... 陸遜 06/10/29(日) 20:25 質問[未読]
【43924】Re:オートフィルで抽出したデータを1件だ... かみちゃん 06/10/29(日) 20:46 発言[未読]
【43926】Re:オートフィルで抽出したデータを1件だ... 陸遜 06/10/29(日) 21:48 質問[未読]

【43914】オートフィルで抽出したデータを1件だけ...
質問  陸遜  - 06/10/29(日) 18:38 -

引用なし
パスワード
    現在ボランティアで会計を担当しているのですが、決算報告書を作成する
ためにマクロを組みたいと考えております。そこで、皆様方のご教示をお願い
いたします。
 毎月末に各月ごとの実績を自動で作るプログラムを使用しております。
 そこで、このシートから科目を一件だけ抽出して金額を別シートの報告書の方にコピーするといった作業をしたいと考えております。
 でも、実績がない月には、当然科目も出てこないので、特定の科目がどの行
にくるのかわかりません。そのため、オートフィルタで抽出したものをコピー
する場合には、columunを使ってコピーするしかない状態です。でも、報告書
のほうにコピーする場合は、とても都合が悪いので、できれば取り出したものを
一軒だけコピーすることにしたいのです。
 たとえば、電気料の科目を抽出して、C列の金額だけ一件をコピーしたいのです。currentregion等を使用してもうまくいきませんでしたが、なにかいい方法
はないでしょうか?

 
シート名:10月実績

 A列   B列  C列  
 支出科目 債主  金額 

 電気料  ○○電力 5000
 会議費  ○△会館 3200


現在のマクロ
 Selection.AutoFilter Field:=26, Criteria1:="=*電気料*"
 Range("Z:Z").Select
  Selection.Copy _
  Destination:=Worksheets("報告書").Range("B2")

【43915】Re:オートフィルで抽出したデータを1件...
発言  かみちゃん E-MAIL  - 06/10/29(日) 18:50 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> なにかいい方法はないでしょうか?

私も会計報告書は、よく作るのですが・・・
実績シートのイメージは提示されているのでわかりますが、
報告書シートのイメージはどのようなものですか?
科目名などがあらかじめ決まっているのであれば、ワークシート関数だけで
できると思います。
また、科目名などが空白であれば、ピボットテーブルが使えるのではないでしょうか?

【43918】Re:オートフィルで抽出したデータを1件...
質問  陸遜  - 06/10/29(日) 19:15 -

引用なし
パスワード
   ▼かみちゃん さん:
お返事ありがとうございます。報告書の書式ですが、以下のようになって
おります。また、実績表とは別のファイルでした。
 B列に金額を入力していくという書式なのですが、一件別でコピーできない
とすると数式が消えてしまうことと、セルの書式設定が変わってしまうことが
あってなかなかうまくいきません。ピボットテーブルを使ったとしても、
月によっては科目が出たり出なかったりしますので、集計された表をそのまま
コピーできない状態となっております。

A列   B列
光熱水料 10000 
 電気料  3000
 上水道料 2500
 下水道料 1500
 ガス料  4000

消耗品費
 事務用品
 業務用品

備品費
 事務用品
 業務用品

【43922】Re:オートフィルで抽出したデータを1件...
発言  かみちゃん  - 06/10/29(日) 20:00 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> B列に金額を入力していくという書式なのですが、一件別でコピーできない
> とすると数式が消えてしまうことと、セルの書式設定が変わってしまう

数式が消えたり、書式設定が変わったりという意味がまったくわからないのですが
たとえば、

Sheet1(10月実績)
   A     B    C 
1 支出科目 債主   金額 
2 電気料  ○○電力 5000
3 会議費  ○△会館 3200
4 電気料  ××電力 2000

Sheet2(報告書)
   A    B
1 支出科目 金額 
2 電気料  7000
3 会議費  3200
4 備品費    0

というようになっていれば(ここでは別ブックとはまだ考えないでください)
Sheet2のB列には、
=SUMIF(Sheet1!A:A,A2,Sheet1!C:C)
という数式だけで集計できます。

>消耗品費
> 事務用品
> 業務用品
>
>備品費
> 事務用品
> 業務用品

あとは、これらは、どのような集計をしたいのでしょうか?

【43923】Re:オートフィルで抽出したデータを1件...
質問  陸遜  - 06/10/29(日) 20:25 -

引用なし
パスワード
   ▼かみちゃん さん:
たびたび申し訳ありません。先ほどの件ですが、1列ごとコピーペーストしてしまうと、数式が消えてしまうという意味で書かせていただきました。報告書の方には科目の中にさらに内訳があるものもありまして、それら細かいものの合計を算出するために数式が入っています。具体的には以下のような感じです。

消耗品費  5000
 事務用品 4000
 業務用品 1000

>備品費  70000
 事務用品 30000
 業務用品 40000

 列を丸ごとコピーすると消耗品費の横にある数式が消えてしまいます。各科目の毎月の実績をある書式に入れて報告するというものです。

 あと、実績表のほうは、あるシステムからダウンロードするようになっており
まして、そのままの表ですと、データが入っているのみです。新たにSUMIF等の
処理をするとなると、大幅な時間がかかってしまうのではないかと考えて、
一件抽出してコピーする方法はないかと思ったのです。

【43924】Re:オートフィルで抽出したデータを1件...
発言  かみちゃん  - 06/10/29(日) 20:46 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> 実績表のほうは、あるシステムからダウンロードするようになっており
> まして、そのままの表ですと、データが入っているのみです。新たにSUMIF等の
> 処理をするとなると、大幅な時間がかかってしまうのではないかと考えて、
> 一件抽出してコピーする方法はないかと思ったのです。

システムからダウンロードしたデータに基づいて、所定の様式に集計する方法は
私も仕事で普段からよくしている処理なので、そういうデータが何レコードくら
いあるのかわかりませんが、SUMIFだと処理に時間がかかることは考えられます。

> 具体的には以下のような感じです。

申し訳ないですが、よくわかりません。
もう一度
実績表と報告書の関係をシートイメージで説明していただけませんか?
特に科目の中にさらに内訳があるものは、どういうデータになっていて、
どのように集計したいのかをきちんと説明していただけませんか?
   A   B   C
1
2
3

【43926】Re:オートフィルで抽出したデータを1件...
質問  陸遜  - 06/10/29(日) 21:48 -

引用なし
パスワード
   ▼かみちゃん さん:
たびたびすみません。元のデータと報告書の様式をもう少し詳しく書かせて
いただきます。最初は元データのB列をオートフィルタで抽出してコピーすれば
それで足りると考えていたのですが、書式が合致しないことと、支払い実績の
ないデータはA列に出てこないことがあって、各科目の行の位置が予測できない
ようになっています。
 また、報告書には独特の分類が求められていて、私どもが普段やっている区分とは別物になっています。その数式をつぶさないようにできればそれにこしたことはないと考えています。

以下は、元のデータの書式です。

A列       B列    C列
予算事項    予算科目     
一般活動費
       消耗品(事務) 5000
       消耗品(業務) 3000
       修繕工事(大)150000
       修繕工事(小) 50000
       電気料     5000
       上水道料    4000
       下水道料    3000
延々とこの列が続きます。


以下は報告書の書式です。

A列   B列   C列  D列
大科目 中科目  小科目  金額
光熱水料          22000←分類ごとの合計。
    電気料         10000
    水道料    上水道   4000
    水道料  下水道   3000
    ガス料          5000
工事費 
    修繕費  小工事   50000
         大工事  150000
    材料費  小工事
         大工事
このような列が延々と続きます。

6663 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free