|
説明が難しいんですが、アクティブBookに対して他Bookからのデータを関数で取得してます。その際にSUMIFSを使用してるんですが、列全部で指定してしまうと時間がかかってしまうためRowsで最終行を取得して関数を入れるやり方がわかりません。
Dim WBK As Variant
Dim i As Long
Set WBK = ThisWorkbook
WBK.Activate
For i = 3 To 12
Worksheets(i).Select
Range("E6:P21").Formula = "=SUMIFS([★DATA.xlsx]ローデータ!$AG$3:$AG$999999,[★DATA.xlsx]ローデータ!$AH$3:$AH$999999,E$4,[★DATA.xlsx]ローデータ!$C$3:$C$999999,$D6,[★DATA.xlsx]ローデータ!$AK$3:$AK$999999,$B$4)"
Formulaを使用しているのがいけないのか、上記のようなことを4度ほど繰り返すので他にいい方法がないものかと試行錯誤しております。
Dim r As Long
Set WBK = ThisWorkbook
Set WB = Workbooks("★DATA.xlsx")
r = WB.Worksheets("ローデータ").Range("B2").End(xlDown).Row
と、最終行は取得できるものの関数の書き方がうまくいきません。
ご教示いただけませんでしょうか。
宜しくお願いします!
|
|