2016-08-18 5 views
0

私はそれを正しくやっていないと確信していますが、私がやっていることはforループ関数を使ってvlookup式を挿入することです。forループを使ったVlookup式の挿入

Dim cnt As Integer 
Dim row As Long 
Dim col As Long 

cnt = [A:A].Cells.SpecialCells(xlCellTypeConstants).Count 

For row = 1 To cnt 
col = col + 1 
[A2].Offset(row - 1, 1).Value = "Vlookup(A" & col + 1 & ",'Sheet1'!,A$2:A$" & cnt & ",1,0)" 
Next row 

lookup_valuecol + 1col_index_numと同じでなければなりませんVLOOKUP式のは、私が.Valueオプションを試してみましたが、それはそれは文字列に"="を持つためとして、それを受け入れていないcnt

に等しくなります。私は.Formula機能を使用してみましたが、それは私にそれにcol + 1などcnt.

+0

は、このコードですシートモジュールまたはコードモジュールで – teylyn

+0

コードモジュール。モジュール1。しかし、あなたがそれを述べたので、私はシートモジュールを付けようとしました。たぶん、シートモジュールではなくコードモジュールで行う方法を学ぶ必要があるかもしれません。 – Marco

答えて

0

この行の不正コンマ

[A2].Offset(row - 1, 1).Value = "Vlookup(A" & col + 1 & ",'Sheet1'!,A$2:A$" & cnt & ",1,0)" 

があり'Sheet1'!後にカンマがあってはなりません。それを除く。

編集:VBAで入力した場合でも、=という記号で式を開始する必要があります。私が正しくあなたの目標をcatched場合は、ループを回避し、次のように、相対的な範囲の参照を活用するために、」.FormulaR1C1" 『範囲』のプロパティオブジェクトを使用することができます

This code runs fine in my tests: 

Sub test() 
Dim cnt As Integer 
Dim row As Long 
Dim col As Long 

cnt = [A:A].Cells.SpecialCells(xlCellTypeConstants).Count 

For row = 1 To cnt 
col = col + 1 
[A2].Offset(row - 1, 1).Value = "=Vlookup(A" & col + 1 & ",'Sheet1'!A$2:A$" & cnt & ",1,0)" 
Next row 
End Sub 
+0

それを指摘してくれてありがとう。私はそれを削除しましたが、エラー '1004'アプリケーション定義またはオブジェクト定義エラーが表示されます。 – Marco

+0

私は提案を追加しました – teylyn

0

ないあなたtable_arrayをすることになっているかわからを挿入するためのオプションを与えていません。しかし、このような動作するはずです:

[a2].Offset(row - 1, 1).Value = "=Vlookup(A" & col + 1 & ",'Sheet1'!A$2," & cnt & ",0)" 
+0

私はこれを試しましたが、私が得ているエラーは、 "=" .Value関数でです。 – Marco

0

Sub main() 
    Dim cnt As Long 

    With Worksheets("Sheet1") '<--| this is the sheet where to lookup 
     cnt = .Range("A1", .Cells(.Rows.Count, 1).End(xlUp)) 
    End With 

    With Worksheets("MySheet") '<--| change "MySheet" with your actual "working" sheet name 
     .Range("B2", .Cells(.Rows.Count, 2).End(xlUp)).FormulaR1C1 = "=Vlookup(RC[-1], 'Sheet1'!A$2:A$" & cnt & ",1,0)" 
    End With 
End Sub 
+0

@マルコ:これを試しましたか? – user3598756

関連する問題