私はリソースを作成するプログラムを作成しました - 概要。プログラムのある時点で私はVBAを介してvlookup-functionを設定したい。シートに手動でvlookup関数を設定した場合(セルに数式を書き込む)(=SVERWEIS(B2;'MS Project'!A:H;2;FALSCH)
)(「SVERWEIS」は「VLOOKUP」のドイツ語、「FALSCH」は「FALSE」のドイツ語です)、正常に動作しますしかし、次のコード行を使ってこの数式をセルに自動的に挿入しても、それはできません。Excel 2013 VBA Vlookup-Functionエラー
rngTarget.Cells(i, col + 1).value = WorksheetFunction.VLookup(rngTarget.Range("B" & i), _
ThisWorkbook.Worksheets("MS Project").Range("A1:H2000"), 2, 0)
"rngTarget"は、activeSheetのusedRangeを表します。
「i」は、現在作業している行を表します。
以下の画像は、プログラムの実行中に表示されるランタイムエラー(1004)を示しています。
それはWorksheetFunction-ObjectのVLOOKUP、プロパティを割り当てることができなかったことを言います。
編集:この行が実行される前に、検索されたオブジェクトが「Msプロジェクト」に存在するかどうかを確認します。存在する場合のみ、vlookup-functionが設定されます。
SOLUTION:私はこの問題を考え出したが、私は変更:
rngTarget.Cells(i, col + 1).value = WorksheetFunction.VLookup(rngTarget.Range("B" & i), _
ThisWorkbook.Worksheets("MS Project").Range("A1:H2000"), 2, 0)
へ:
rngTarget.Cells(i, col + 1).value = Application.VLookup(rngTarget.Range("B" & i).value, _
ThisWorkbook.Worksheets("MS Project").Range("A1:H2000"), 2, 0)
私も前に、それは何も変化しないことを試みました。しかし、私はそれをrngTarget.Range( "B"&i).Valueにします。 – flohdieter
@flohdieter少し修正を参照してください、 '.Value2'を使ってみてください – Carrosive
ああ大丈夫、それはまだ同じ状況を試してみました。あなたの助けをありがとう、私は問題を解決し、私の質問を編集! – flohdieter