Как ссылаться на значение ячейки внутри строки в VBA? - PullRequest
0 голосов
/ 11 января 2020

У меня есть список заголовков mov ie, и я хочу взять заголовок mov ie из ячейки и выполнить запрос к imdb.

Как заменить "Goonies" ссылкой на ячейку?

Вот мой макрос VBA.

Sub MovieLookup()
On Error Resume Next

    Dim objHttp As Object
    Dim Movie As String

    Set objHttp = CreateObject("MSXML2.ServerXMLHTTP")

    objHttp.Open "GET", "http://www.omdbapi.com/?apikey=apikeyhere&t=Goonies", False
    objHttp.send ""
    Movie = objHttp.responseText

    Cells(1, 1).Value = Movie

End Sub

Ответы [ 2 ]

2 голосов
/ 12 января 2020

Это можно сделать следующим образом: используйте InputBox, чтобы получить заголовок mov ie и объединить его с базовым URL-адресом без заголовка ie.

Обновленный код:

Sub MovieLookup()
On Error Resume Next

Dim objHttp As Object
Dim movieTitle as string
dim movieURL as string

    'Get movie name
    movieTitle = InputBox("Please enter movie title:")

    'Replace single space (" ") with plus sign ("+")
    movieTitle = Replace(movieTitle , " ", "+")

    'Create movieURL
    movieURL = "http://www.omdbapi.com/?apikey=ffe8bdc5&t=" & movieTitle 

    Set objHttp = CreateObject("MSXML2.ServerXMLHTTP")

    objHttp.Open "GET", movieURL, False
    objHttp.send ""
    Movie = objHttp.responseText

    Cells(1, 1).Value = Movie
End Sub
0 голосов
/ 11 января 2020

Вы можете заменить «Goonies» ссылкой на ячейку, например Range("A1").Value2. Вот как это выглядело бы в вашем случае:

objHttp.Open "GET", "http://www.omdbapi.com/?apikey=ffe8bdc5&t=" & Range("A1").Value2, False
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...