Использование VLOOKUP в формуле - PullRequest
0 голосов
/ 08 апреля 2020

Я получаю ошибку компиляции в этой строке, но мне все кажется правильным. Мне нужно поместить vlookup внутри оператора if, который делает это сложно. Может кто-нибудь уловить ошибку?

Dim k as Integer, numS as Integer
Range(Cells(k, 13), Cells(k, 13)).Formula = _
        "=IF(" & Range(Cells(k, 14), Cells(k, 14)).Value & "=" & VLOOKUP(""Weeks from Event " & numS-1 & " to Event " & numS & """, R11C5:R10000C8, 4) & "," & (numS) & ", """")"

1 Ответ

0 голосов
/ 09 апреля 2020

Я думаю, что ошибка в нотации R C, попробуйте R [11] C [5]: R [10000] C [8], но для использования VlookUp в VBA мне нравится использовать Application.WorksheetFunction ...

Sub test()
    Dim k As Long
    Dim numS As Long
    Dim LookUpValue As String

    LookUpValue = "Weeks from Event " & numS - 1 & " to Event " & numS
    Debug.Print (LookUpValue)

    If (Cells(k, 14).Value = WorksheetFunction.VLookup(LookUpValue, Range(Cells(11, 5), Cells(1000, 8)), 4)) Then
        Cells(k, 13).Value = numS
    Else
        Cells(k, 13).Value = ""
    End If

End Sub

Дайте мне знать, если это поможет. Вы можете сразу же нажать windows (Ctrl + G) в редакторе VBA, чтобы увидеть, каким будет значение LookUpValue.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...