Excel VBA質問箱 IV

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

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


3232 / 13646 ツリー ←次へ | 前へ→

【63328】ファイル集計 初心者 09/10/27(火) 16:23 質問[未読]
【63331】??? ころころ 09/10/28(水) 7:10 質問[未読]
【63333】Re:ファイル集計 Jaka 09/10/28(水) 10:32 発言[未読]
【63407】Re:ファイル集計 初心者 09/11/2(月) 0:52 質問[未読]
【63408】Re:ファイル集計 こもと 09/11/2(月) 11:20 発言[未読]
【63410】Re:ファイル集計 初心者 09/11/2(月) 14:11 質問[未読]
【63412】Re:ファイル集計 こもと 09/11/2(月) 15:02 発言[未読]
【63416】Re:ファイル集計 初心者 09/11/2(月) 15:29 質問[未読]
【63420】Re:ファイル集計 こもと 09/11/2(月) 17:03 発言[未読]
【63422】Re:ファイル集計 初心者 09/11/2(月) 17:30 質問[未読]
【63423】Re:ファイル集計 こもと 09/11/2(月) 17:41 発言[未読]
【63424】Re:ファイル集計 初心者 09/11/2(月) 18:08 お礼[未読]

【63328】ファイル集計
質問  初心者  - 09/10/27(火) 16:23 -

引用なし
パスワード
   以下の点で困っています。

ファイル名がころころ変わるファイル(その時に応じて変更するファイルで特定できない)を、集計し、それを1つのファイルにまとめたい。
なお、そのまとめ先のファイルには、シートが1.から10.まであり
1.には1番目にあつめたファイル
2.には2番目にあつめたファイル・・・

という感じでコピーしていきたいと思っています。

ご教授、よろしくお願いいたします。

【63331】???
質問  ころころ  - 09/10/28(水) 7:10 -

引用なし
パスワード
   >ファイル名がころころ変わるファイル
どういうこと?

>・・・集計し、それを1つのファイルにまとめたい
どういうデータがどのように配置されていて、
それをどんなふうに集計したいのか?

具体的なことが何もわからないのが、
レスのつかない理由では?

【63333】Re:ファイル集計
発言  Jaka  - 09/10/28(水) 10:32 -

引用なし
パスワード
   ▼初心者 さん:
>ファイル名がころころ変わるファイル(その時に応じて変更するファイルで特定できない)を、集計し、それを1つのファイルにまとめたい。
>なお、そのまとめ先のファイルには、シートが1.から10.まであり

Dir関数とかGetOpenFilenameとか?

>1.には1番目にあつめたファイル
>2.には2番目にあつめたファイル・・・
>
>という感じでコピーしていきたいと思っています。

マクロ記録でもベースになる物は作れると思います。
カスタマイズできるかどうかが、初めの1歩に近いかも。

【63407】Re:ファイル集計
質問  初心者  - 09/11/2(月) 0:52 -

引用なし
パスワード
   ころころさん、Jakaさん 返信ありがとうございます。

説明?できているか不明ですが、
内容としては・・・

1.開いているが5コあります

2.それらのブックを1つのブックに集計したいとおもっています。

3.集計したブックを別のシートに張り付けしていきたい
 シートを1から順に1つのシートにはりつけしていく感じ
  A65536.end(xlup).activateのセル設定で順に貼っていくような感じで


という感じです。
わかりにくくてすいません。。。

【63408】Re:ファイル集計
発言  こもと  - 09/11/2(月) 11:20 -

引用なし
パスワード
   ▼初心者 さん:

こんな感じの事でしょうか?

Sub test()
Dim wb As Workbook, c As Long
For Each wb In Application.Workbooks
 If wb.Name <> ThisWorkbook.Name Then
  c = c + 1
  MsgBox c & "番目のファイルは" & wb.Name & "です"
 End If
Next wb
End Sub

【63410】Re:ファイル集計
質問  初心者  - 09/11/2(月) 14:11 -

引用なし
パスワード
   ▼こもと さん:
>▼初心者 さん:
>
>こんな感じの事でしょうか?
>
>Sub test()
>Dim wb As Workbook, c As Long
>For Each wb In Application.Workbooks
> If wb.Name <> ThisWorkbook.Name Then
>  c = c + 1
>  MsgBox c & "番目のファイルは" & wb.Name & "です"
> End If
>Next wb
>End Sub


こもとさん、返信ありがとうございます。
まさに、こんな感じなんですが、

これをブックを
application.getopenfilename(filefilter:="サンプルファイル,*.xls",title:="ファイルを選択",multiselect:=true

という感じ?で選択させて、それらの選択したブックを
1つの集計というブックにシートを映してきたいと考えています。

これがまったくわからなくて・・・

【63412】Re:ファイル集計
発言  こもと  - 09/11/2(月) 15:02 -

引用なし
パスワード
   ▼初心者 さん:
>こもとさん、返信ありがとうございます。
>まさに、こんな感じなんですが、
>
>これをブックを
> application.getopenfilename(filefilter:="サンプルファイル,*.xls",title:="ファイルを選択",multiselect:=true
>
>という感じ?で選択させて、それらの選択したブックを
>1つの集計というブックにシートを映してきたいと考えています。

したのような感じで変数で選択したファイルを受けて
順次処理します。
転記の内容はわからないのでコメントアウトしてます。

Sub test()
Dim wb As Workbook, i As Long, myFile
myFile = Application.GetOpenFilename _
      (filefilter:="サンプルファイル,*.xls", _
      Title:="ファイルを選択", MultiSelect:=True)
If TypeName(myFile) = "Boolean" Then Exit Sub
For i = 1 To UBound(myFile)
 Set wb = Workbooks.Open(myFile(i))

  MsgBox i & "番目のファイルは" & wb.Name & "です"
  'ここに転記のコード

 wb.Close False
 Set wb = Nothing
Next i
End Sub

【63416】Re:ファイル集計
質問  初心者  - 09/11/2(月) 15:29 -

引用なし
パスワード
   >Sub test()
>Dim wb As Workbook, i As Long, myFile
>myFile = Application.GetOpenFilename _
>      (filefilter:="サンプルファイル,*.xls", _
>      Title:="ファイルを選択", MultiSelect:=True)
>If TypeName(myFile) = "Boolean" Then Exit Sub
>For i = 1 To UBound(myFile)
> Set wb = Workbooks.Open(myFile(i))
>
>  MsgBox i & "番目のファイルは" & wb.Name & "です"
>  'ここに転記のコード
>
> wb.Close False
> Set wb = Nothing
>Next i
>End Sub


こもとさん、ありがとうございます。
転記の内容ですが、
1つの集計するブックに、これらの選択したファイルを集計する
マクロがわからなくて・・・


例)ブック名 集計
開いた(選択した)ブック名 1.あああ 2.いいい 3.ううう

実行したいマクロ:1.から3.をブック(集計)にまとめる
   (各ブックにあるシートをブック(集計)にもとめる


というものなのですが・・・

【63420】Re:ファイル集計
発言  こもと  - 09/11/2(月) 17:03 -

引用なし
パスワード
   ▼初心者 さん:
>1つの集計するブックに、これらの選択したファイルを集計する
>マクロがわからなくて・・・

ほとんどマクロ記録で出来るはずですが
こんな感じの事でしょうか?

Sub test()
Dim wb As Workbook, ws As Worksheet, i As Long, myFile
myFile = Application.GetOpenFilename _
      (filefilter:="サンプルファイル,*.xls", _
      Title:="ファイルを選択", MultiSelect:=True)
If TypeName(myFile) = "Boolean" Then Exit Sub
For i = 1 To UBound(myFile)
 Set wb = Workbooks.Open(myFile(i))
 For Each ws In wb.Worksheets
  With ThisWorkbook
   ws.Copy After:=.Sheets(.Sheets.Count)
  End With
 Next ws
 wb.Close False
 Set wb = Nothing
Next i
End Sub

【63422】Re:ファイル集計
質問  初心者  - 09/11/2(月) 17:30 -

引用なし
パスワード
   >Sub test()
>Dim wb As Workbook, ws As Worksheet, i As Long, myFile
>myFile = Application.GetOpenFilename _
>      (filefilter:="サンプルファイル,*.xls", _
>      Title:="ファイルを選択", MultiSelect:=True)
>If TypeName(myFile) = "Boolean" Then Exit Sub
>For i = 1 To UBound(myFile)
> Set wb = Workbooks.Open(myFile(i))
> For Each ws In wb.Worksheets
>  With ThisWorkbook
>   ws.Copy After:=.Sheets(.Sheets.Count)
>  End With
> Next ws
> wb.Close False
> Set wb = Nothing
>Next i
>End Sub


こもとさん、何度もすいません。
参考書も見ながらやったんですが、マクロを実行すると
実行時エラー1004がでてしまうのです。
他にもシートが5つあり、それらがあるからでしょうか。

【63423】Re:ファイル集計
発言  こもと  - 09/11/2(月) 17:41 -

引用なし
パスワード
   ▼初心者 さん:
>参考書も見ながらやったんですが、マクロを実行すると
>実行時エラー1004がでてしまうのです。
>他にもシートが5つあり、それらがあるからでしょうか。

あくまでも例としてのコードですので
初心者さんのブックやシートの中身もわかりませんし・・・

VBAは書いたとおりにしか動かないので
完璧に動くコードを書くには
完璧な条件と仕様が必要となります。

【63424】Re:ファイル集計
お礼  初心者  - 09/11/2(月) 18:08 -

引用なし
パスワード
   こもとさん、了解しました。
ちょっと自分でイジくってみます。

いろいろとご教授ありがとうございます。

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