Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Excel 2010)
複数のブックから集計表を作成する
投稿日時: 17/12/06 09:05:30
投稿者: 大

どなかたわかる方お願いいたします。
 
【ご質問内容】
個人から集めたブック内のデータを集計表にまとめたい。
 
◆個人から集めるブックは、「数字_名前.xlsx」と名称がついている。
0125_佐藤.xlsx
845_鈴木.xlsx
5033_田中.xlsx

・          のような形です。
 
 
◆その中のシート(シート名も数字_名前)に
集計項目があります。

 
「集計項目」
ユーザー名  訪問日   先方  ・・・
(株)A社   12/1   伊藤様  ・・・
(株)B社   11/30   阿部様  ・・・
 
 
集計項目の上側には個人目標等が入力されており、
集計項目が何行目から始まって、何行入力されているかは
個人によってことなります。

 
その情報を別のエクセルブック(集計表.xlsx)にまとめたいのです。
 
 
◆個人から集めたブックはデスクトップ上のフォルダ
(C:\Users\suisin\Desktop\まとめフォルダ)
に全て入れます。
 
◆集計表.xlsxを立ち上げて、マクロを実行したら、
個人から集めたブックを順次開き、集計項目をコピーして、
下記のように一枚のシート(シート名:集計表)にまとめたいのです。

 
 
担当     ユーザー名  訪問日   先方  ・・・
0125_佐藤  (株)A社   12/1   伊藤様  ・・・
0125_佐藤  (株)B社   11/30   阿部様  ・・・
845_鈴木   (株)C社  10/4    桝田様  ・・・
5033_田中  (株)D社   12/4   太田様  ・・・ 
 
 
◆最初の列に担当者名(シートの名前)をいれたいのです。

どなたか、お詳しい方教えていただけますでしょうか。
お手数をお掛けいたしますが、よろしくお願いいたします。
 
 

回答
投稿日時: 17/12/06 10:09:14
投稿者: もこな2

一応、テンプレ的なところから。
「Q&A 掲示板ご利用上のお願い」の「禁止事項」に以下のようにあります。
コード制作依頼
「●●●を実行するようなマクロを作りたいのですが」「●●●をする方法を教えてください」といった、コード制作依頼ともとれるような質問はおやめください。
 
ですので、やりたいことだけ説明して丸投げするようなご質問ですと、なかなか回答がつきづらいと思われます。
 
さて、状況を整理するとこんな感じでしょうか
 
<前提>
@「C:\Users\suisin\Desktop\まとめフォルダ」にファイル(ブックが複数入っている)(処理対象ブックという)
Aブックの中にブック名(拡張子部分を除く)と同じシート名のシートがある。
B「集計表.xlsx」というブックという集計用のブックがある
 
 
<処理したいこと>
@(処理対象ブック)の中身を集計表ブックにコピペしたい
Aコピペしたデータの最後の列にどのブック(またはシート)由来のデータなのかも入力したい
 
 
このような条件であれば、いろんな方法はあるでしょうけど自分なら
@Dir関数かファイルシステムオブジェクトをつかって、処理対象ブックを取得する
 
Aブックを開く
Aブック名と同じシート名のワークシートの(必要な行)に対してCopyメソッドを実行
  (貼付先は、集計用ブックの集計シートのA列の最終行+1のセル)
B 集計シートのA列「貼付先セル.Row 集計シートの最終行」にセル範囲を挿入
  「シートのRange(最終列 & 貼付先セル.Row & ":" & 最終列 & 貼付先シートの最終行」
C 挿入したセル範囲の値を、処理対象ブックのシート名などに設定
D 処理対象ブックを保存せずに閉じる
 
A〜Dをループ
 
こんな感じにします。
 
具体的なコードの提示がないとお悩みのポイントがわからないので、少なくとも私にはこれ以上の答えというかアドバイスができません。
参考になりましたら幸いです。

回答
投稿日時: 17/12/06 10:12:14
投稿者: もこな2

追加コメントです。

大 さんの引用:
集計項目が何行目から始まって、何行入力されているかは個人によってことなります。
ここは、直前に見出しがはいってるとか、それより前の行はブランクになってるとか、追加の情報が無いとどうにもならない気がします。

回答
投稿日時: 17/12/06 10:17:49
投稿者: WinArrow
投稿者のウェブサイトに移動

>どなたか、お詳しい方教えていただけますでしょうか。
 
何に詳しい人を指しているのかわかりませんが、
あなた以上に詳しい人はいないと考えた方がよいでしょう。
 
>お手数をお掛けいたしますが、よろしくお願いいたします。
 
これって、コードの作成依頼ですか?

http://www.moug.net/faq/kiyaku.html
の中にも記述がありますが、
コードの作成依頼は禁止されています。
 
コードは、あなたが作成することが前提です。
 
あなたが作成したコード、または、コード作成方法についてのアドバイスについては、
回答者は歓迎します。
 
ネットで
"複数のブックから転記するには"
のようなキーワードで検索すると
参考になる情報が得られるかもしれません。
 
 

投稿日時: 17/12/06 10:25:50
投稿者: 大

もこな2様、WinArrow様
 
申し訳ございませんでした。
「Q&A 掲示板ご利用上のお願い」の「禁止事項」を
きちんと確認するべきでした。
 
ご迷惑をおかけいたしました。