2016-03-24 18 views
0

Etkin sayfamdaki hücre değeriyle aynı ada sahip bir çalışma sayfasına vlookup oluşturmaya çalışıyorum. Excel VBA vlookup formülünde hücre değerini kullanma

Ben 'Çalışma zamanı hatası '1004 olsun, benim vlookup formülünde 'str' kullanabilirsiniz aşağıdaki düşünceyi yarattı fakat': Uygulama tanımlı veya nesne tanımlı hata'

Sub copy() 

    Dim LastRow As Long 
    Dim str As String 

    str = Cells(1, 5).Value 

    With Sheets("Overview") 
     LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row 

     With .Range("E2:E" & LastRow) 
      .Formula = "=VLOOKUP(B2, & str &!B:F,5,FALSE)" 
     End With 

    End With 

End Sub 

Can Herkes yanlış yaptığımı görüyor mu?

+2

Dene:! ' "= DÜŞEYARA (B2," & str &" B : F, 5, FALSE) "' –

+0

@ScottCraner Bu basit bir sözdizimi hatası: Bu soruyu çok fazla bir değer olarak kapatmalı mıyız? Aksi takdirde, cevabınızı gönderebilirsiniz ve ben de bunu bildireceğim (btw, diğer yayınlanmış cevap aslında çözümünüzü içerir, ancak önce bunu göndermişsiniz, bu yüzden kredi size gitmelidir). Saygılarımızla, –

+1

@AlexBell neredeyse aynı anda gönderdik, neredeyse yorumumu sildim. Ürdün'e doğru cevap için kredi vermekte haklıyım. Eğer bir cevap yazsaydım, onunla aynı olurdu. Ama teşekkür ederim. Bunun kapanması için yeterli oy alacağından şüpheliyim. –

cevap

2

Sen VBA'DA str tanımlanmış ancak tırnak kapatma kapatmadan formülünde kendisine intikal ettik, şunu deneyin:

Sub copy() 

Dim LastRow As Long 
Dim str As String 

str = Cells(1, 5).Value 

With Sheets("Overview") 
    LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row 

    With .Range("E2:E" & LastRow) 
     .Formula = "=VLOOKUP(B2," & str & "!B:F,5,FALSE)" 
    End With 

End With 

End Sub 
+0

Teşekkür ederiz Scott ve Ürdün ... şu anda mükemmel bir anlam ifade ediyor. Teklifleri ekledim ve mükemmel çalışıyor! – SMORF

+1

Endişeye gerek yok, eğer bunu doğru olarak isimlendirebilirseniz, daha önce çözülmüş olan bir soruna yardımcı olmak için soruyu inceleyen başkalarını da kaydedecektir. Teşekkürler – Jordan