| 
    
     |  | >Fund.xlsのPerformanceシートのE3セルの内容をFund unv.xlsシートの >ファンド PfoシートのC列から検索し→その右隣のセルに入っている値を
 >Project.xlsのFundシートのE7セルへとコピー
 
 Dim F_Data As Variant
 Dim FR As Range
 
 F_Data = Workboooks("Fund.xls") _
 .Worksheets("Performance").Range("E3").Value
 Set FR = Workbooks("Fund unv.xls").Wosksheets("ファンド Pfo") _
 .Range("C:C").Find(F_Data, , xlValues)
 If FR Is Nothing Then
 MsgBox F_Data & vbLf & "は見つかりませんでした", 48
 Exit Sub
 End If
 Workbooks("MC Project.xls").Worksheets("Fund").Range("E7").Value = _
 FR.Offset(, 1).Value
 Set FR = Nothing
 
 基本的にこんなコードになります。
 エラーの原因は、現在開いているブックが Fund unv.xls でないのに、その中の
 ファンド PfoシートをActiveにしようとしたからでしょう。VBAプログラミングに
 慣れてくると、上のように一度も Active や Select しないでコードが作成できる
 ようになります。そうしないと処理効率が悪くなるし画面がちらついて見苦しいので、
 早くなくすように努力して下さい。
 
 |  |