これをVBAのマクロで組みたくて試行錯誤しております。
ア) ActiveCell = " =VLookup(E8, 'D:\Work\AG.xls'!ag_flow, 2, False) "
はOKでした。
イ) ActiveCell = Application.WorksheetFunction.VLookup(Range("E8"),
Range("'D:\Work\AG.xls'!ag_flow"), 2, False)
はエラーが出て通りません。
いろいろ試行錯誤した結果、Range("'D:\Work\AG.xls'!ag_flow")の記述が正しく
ないようだというところまではわかりましたが、どのように記述すればよいかわかり
ません。
ア)の方法でも一応目的は達しているのですが、イ)で実行できないことが気に
なってます。
他のBookの範囲(ag_flow)をVBAで参照する正しい記述方法をお教え願えれば幸いで
す。
BookをOpenする方法しか、わかりませんでした。
Option Explicit
Sub myVlookup()
'BookをOpenするとActiveCellが変わってしまうので、
'ActiveCellを取得しておきます。
Dim myActiveCell As Range
Set myActiveCell = ActiveCell
Dim myRange As Range
Set myRange = Workbooks.Open("D:\Work\AG.xls").Worksheets("Sheet1").Range("ag_flow")
myActiveCell.Value = Application.VLookup(ThisWorkbook.Worksheets("Sheet1").Range("E8"), myRange, 2, False)
End Sub
--
IshikawaShinzi funb...@d1.dion.ne.jp
マクロ集
http://www.d1.dion.ne.jp/~funbe934/excel/excel.html
"Naoki Tsuji" <tsuj...@ma.kcom.ne.jp> wrote in message
news:8grgvq$6eo$1...@news1.kcom.ne.jp...
> 辻と申します。
> ア)の方法でも一応目的は達しているのですが、イ)で実行できないことが気に
> なってます。
> 他のBookの範囲(ag_flow)をVBAで参照する正しい記述方法をお教え願えれば幸いで
> す。
>
すでにア)の方法で,目的は達しているようなので,余計なことかもしれません。そ
の上,他のBookの範囲(ag_flow)をVBAで参照する正しい記述方法というのが,自分も
よく分かっていないのですが。取りあえず,下のようなものを書いてみました。しか
し,あまりお勧めはできません。(コ-ドが汚い,やたらActivateを使用している,
参照するBookをOpenしないとダメ等色々気に入らない所あり。でも,こうしないと簡
単に参照できなかったので仕方なくこんな具合になりました。) また,辻さんの望
んでるものと違うかもしれない。
なんか他にスマ-トな方法があれば,教えて下さい。
Sub test_lookup()
Dim wk_book, act_wk_book As Workbook
Dim wk_sheet As Worksheet
Dim t_range As Range
On Error GoTo exi
Set act_wk_book = ActiveWorkbook
For Each i In Workbooks
If i.Name = "testdata.xls" Then 'デ-タのあるブック名
Set wk_book = i
Exit For
Else
Set wk_book = Nothing
End If
Next i
If wk_book Is Nothing Then
Set wk_book = Workbooks.Open("c:\my document\excel\testdata.xls")
'デ-タのあるブックを指定
End If
wk_book.Activate
Set wk_sheet = wk_book.Sheets("sheet1")
wk_sheet.Activate
Range("ag_flow").Select
Set t_range = Selection
act_wk_book.Activate
ActiveCell = Application.WorksheetFunction.VLookup(Range("E8"), t_range,
2, False)
exi:
End Sub
--
********************************
< keizi kounoike >
********************************