Excel VBA質問箱 IV

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

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


2126 / 13645 ツリー ←次へ | 前へ→

【69799】別ブックのデータを縦にくっつける みちゃこ 11/8/30(火) 18:55 質問[未読]
【69800】Re:別ブックのデータを縦にくっつける UO3 11/8/30(火) 20:31 回答[未読]
【69802】Re:別ブックのデータを縦にくっつける みちゃこ 11/8/30(火) 21:50 お礼[未読]

【69799】別ブックのデータを縦にくっつける
質問  みちゃこ  - 11/8/30(火) 18:55 -

引用なし
パスワード
   集計結果.xlsには「OUTPUT」シートのみ存在し、このブックにはマクロプログラムを埋め込みます。
マクロプログラムは次のように書きます。

1.「C:\元データ」フォルダに存在するExcelブックを立ち上げます。
2.先頭シートのC5:G25セルをコピーし、集計結果.xls OUTPUTシートのA3:E23に貼り付けます。
3.F3:F23に1で立ち上げたブック名を書き出します(.xls部分は記載しない)
4.1で立ち上げたブックを閉じます。
5.「C:\元データ」フォルダに存在するExcelブック(1とは異なるもの)を立ち上げます。
6.今度は先頭シートのC5:G25セルをコピーし、集計結果.xls OUTPUTシートのA24:E44に貼り付けます。
7.F24:F44に5で立ち上げたブック名を書き出します(.xls部分は記載しない)
8.5で立ち上げたブックを閉じます。
9.「C:\元データ」フォルダに存在するExcelブック(1、5とは異なるもの)を立ち上げます。
10.先頭シートのC5:G25セルをコピーし、集計結果.xls OUTPUTシートのA45:E65に貼り付けます。
11.F45:F65に1で立ち上げたブック名を書き出します(.xls部分は記載しない)

以下同様です

このように、「C:\元データ」フォルダに存在するExcelブックの先頭シートのC5:G25をすべてコピーし
F列にブック名を記載した上で集計結果.xlsのOUTPUTシートに縦結合したいのです。

このようなプログラムはどのように書けばいいのでしょう。
申し訳ありませんが、よろしくおねがいします。

使っているのはExcel2003です

【69800】Re:別ブックのデータを縦にくっつける
回答  UO3  - 11/8/30(火) 20:31 -

引用なし
パスワード
   ▼みちゃこ さん:

ブックを開かないでリンク式をセットして対応する方法もありますが
ここは、素直に、開いて処理しましょう。

Sub Sample()
  Dim myPath As String
  Dim fName As String
  Dim v As Variant
  Dim i As Long
  Dim sh As Worksheet
  
  Application.ScreenUpdating = False
  
  Set sh = ThisWorkbook.Sheets("OUTPUT")
  i = 3
  myPath = "C:\元データ"
  
  fName = Dir(myPath & "\*.xls")
  Do While Len(fName) > 0
    Workbooks.Open myPath & "\" & fName
    v = Split(fName, ".")
    sh.Cells(i, "A").Resize(21, 5).Value = Range("C5:G25").Value
    sh.Cells(i, "F").Resize(21).Value = v(0)
    ActiveWorkbook.Close savechanges:=False
    i = i + 21
    fName = Dir()
  Loop
  
  Application.ScreenUpdating = True
  MsgBox "集約が終わりました"
  
End Sub

【69802】Re:別ブックのデータを縦にくっつける
お礼  みちゃこ  - 11/8/30(火) 21:50 -

引用なし
パスワード
   ▼UO3 さん:

さっそく書いていただきありがとうございます。
まだ私にはむずかしいですが、1行ずつ意味を調べ理解しながら習得したいと思います。
本当に助かりました。べんきょうにもなりそうです。
また教えてくださいね。

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