電子書籍の厳選無料作品が豊富!

お世話になります。質問を締め切ってしまい、回答者の方からご連絡いただいたので改めて投稿させていただきます。

同一フォルダ内にある複数のファイル(.xlsx)を一つのファイルに統合するマクロを考えております。
以下内容でツールを作りたいと思っています。何かヒントになるソースコードがありましたらご教示いただけないでしょうか?(現段階で、1つのファイルをコピー複製し、それに他ブックのデータを、配列などを用い追記できないかと考えていますが、まだそこに至っておりません。)

ファイル数は毎回変わります(20~30程度)
データ数はマージした後で最大でも10万レコードはいかない程度
シート数は10程度、見出し内容は固定で1~3行目までが見出し(項目により、行結合してあったり2段になっていたりしますが、データの左上端は必ずセルA3です)
シートごとにデータをマージしたいです。

フォルダ指定について
フォルダ指定は、参照ボタンでユーザーに選択してもらう
出力先もボタンを押し、毎回ユーザーに選択してもらいます

以上どうぞよろしくお願いいたします。
自分の考えた方法ですが、まずはじめの、ファイルを複製する方法については、別投稿で質問させていただきました。

「複数ファイルのデータの統合について」の質問画像

質問者からの補足コメント

  • 訂正 ファイルのデータ部分、左上端はA3ではなくA4でした。

      補足日時:2022/05/14 12:10
  • 統合するデータの見出しイメージです。

    「複数ファイルのデータの統合について」の補足画像2
      補足日時:2022/05/14 13:45

A 回答 (12件中11~12件)

No1の補足3についてです。


添付図の場合、最大行数は10行になりますが、A列を基準にして求めると、
最大行数は9行になります。(A列に歯抜けのセルがあるため)
このような事態が発生すると正しく行数を算出できなくなります。
全てのシートについて、「A列に歯抜けのセルがあるケースはない」
前提で良いでしょうか。
「複数ファイルのデータの統合について」の回答画像2
    • good
    • 0
この回答へのお礼

ありがとうございます。見出し行のイメージを追加しました。見出し行に歯抜けはない状態です。見出し項目数(列の数)は60程度あります。

お礼日時:2022/05/14 13:47

以下の前提であってますか。


1.すべてのシートについて、見出し行が3行分あり、データは4行目から開始する。
2.マージする際は、最初のファイルについては、見出しを含めてマージ先のシートに格納し、2番目以降のファイルについては4行目以降をマージ先のシートに追加する。
3.各シートの行数は、全てA列で決定を行うものとする。
従って、A列のデータ(4行目以降)に歯抜けのデータはない。
(歯抜けとは途中の行が空白になっているセル)
4.マージしたファイルのファイル名は、何でしょうか?
5.ファイルをマージする順番は、Dir関数で取得した順になりますが、
それでよろしいでしょうか。


https://oshiete.goo.ne.jp/qa/12945379.html
の質問は、ファイルのマージについてでしたので、
フォルダの指定については、想定していませんでした。
フォルダの指定については、後ほど追加で補足要求させていただきます。
まずは、ファイルのマージの際の要件を確認したいと思っています。
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。前提はすべて合っております。シート数は10程度で、データがブランクの場合もあります。

おっしゃる通り、フォルダ指定については、前回の質問では一旦は置いておこうと思っていたため触れておりませんでした><

ファイル名は仮で【AAA】売上管理表_yyyymmdd_01.xlsx
となります。同日の出力データがあると01,02,03などと連番になります。

仮に02があるとしてもレコードがいっぱいになって02になるわけではなく
同日のうち2回データを取得すると02のブックが作成されるようです。
(レコードの重複の有無については、、すみません、未確認です。)

【AAA】売上管理表_20220420_01.xlsx
【AAA】売上管理表_20220420_02.xlsx
【AAA】売上管理表_20220421_01.xlsx

統合後のファイル名は冒頭に「マージ」とつける等にしたいと考えております。
どうぞよろしくお願いいたします。

お礼日時:2022/05/14 13:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!