Excel VBA質問箱 IV

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

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


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

【35862】複数ブックの同名シート同セル位置の数値... sisley 06/3/14(火) 18:58 質問[未読]

【35862】複数ブックの同名シート同セル位置の数値...
質問  sisley  - 06/3/14(火) 18:58 -

引用なし
パスワード
   VBA初心者です。
こちらの過去ログから 
「【25294】複数ブックの同名シート同セル位置の数値... 」  
というのを参考にさせていただきまして
以下のようなマクロを作成しました。
といっても配列の項目を追加しただけです。
マクロを実行すると「実行時エラー'9’:
インデックスが有効範囲にありません。」という
メッセージが表示されてしまいます。

マクロで実現したいことは
ディレクトリ内の複数のブックの
同じ形式のシート(2月第1週〜2月第5週)
の5項目をコピーしてそれを別ブックの一つのシートに
処理した順に貼り付けていくというものです。
このマクロではマクロ実行時にファイルダイアログボックスが
表示されるのですが、指定したディレクトリ内の
ファイルを全て処理するということも
可能なのでしょうか。
どなたかご存知の方がいらっしゃいましたら
ご教授ください。よろしくお願い致します。


Sub test()

'対象シート名の配列
ArySht = Array("2月第1週", "2月第2週", "2月第3週", "2月第4週", "2月第5週")
'対象セルの配列
AryRng = Array("D4", "D5", "D6", "R58", "T58")

BNM = Application.GetOpenFilename(".XLS,*.XLS", , "作業報告書", , True)
If TypeName(BNM) <> "Boolean" Then
  For Each BUF In BNM
    XT = Split(BUF, "*")
    STR1 = "='" & Left(BUF, Len(BUF) - Len(XT(UBound(XT)))) & "[" & XT(UBound(XT)) & "]"
    For Each SHT In ArySht
      For Each RNG In AryRng
        STT = STR1 & SHT & "'!" & RNG
        With Sheets(SHT).Range(RNG)
        
        i = .Value
        .Value = STT
        .Value = .Value + i
        End With
      Next
    Next
  Next
End If

End Sub

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