[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ファイルを開かないでデータを採取したい』(nagasan)
開いているファイル以外のファイルからデータを採取したくて以下のマクロを作成しました。
Sub test()
Dim thisBook As workBook Dim workBook As workBook Dim i As Integer Dim retsu As Integer Application.ScreenUpdating = False For retsu = 2 To 14 Step 14 For i = 8 To 25 Set thisBook = ThisWorkbook If Cells(i, retsu) <> "" Then Set workBook = Workbooks.Open(Cells(2, 2) & Cells(3, retsu) & "\" & Cells(i, retsu)) Cells(i, retsu + 1).Value = workBook.Worksheets("入力禁止").Cells(47, 19).Value workBook.Close saveChanges:=False Else Cells(i, retsu + 1).Value = "" End If Next i Next retsu Application.ScreenUpdating = True End Sub
しかし、いちいちファイルを開いてデータを採取しているためか、
実行するのに30秒程度の時間がかかります。
ExecuteExcel4Macroを使う事までは、ネットで調べられたのですが、
データを採取するファイルのパスやファイル名にセルデータを使用しているため、
私の知識ではうまくいきません。ご教授いただけないでしょうか?
参考:ブックを開かないで読む http://officetanaka.net/excel/vba/tips/tips28.htm MsgBox ExecuteExcel4Macro("'C:\[Book1.xls]Sheet1'!R1C1") "'C:\[Book1.xls]Sheet1'!R1C1"は文字列なので文字列&文字列&文字列 の様にできるのでセルの値&セルの値&セルの値にすればよいだけでは
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.