У меня есть длинный список номеров продуктов нашей компании, и позже в коде эти номера должны быть преобразованы в HTML, а затем связаны с соответствующей страницей продукта. Ссылки на страницы имеют многочисленные перенаправления 301, чтобы перейти от чего-то грязного / старого / опечатки / и т. д. к новым URL-адресам, оптимизированным для SEO.
Например, что-то вроде этого:
сайт.com/12345
Будет перенаправлен на эту страницу:
site.com/имя-продукта-12345
У меня нет списка для сравнения названий продуктов, так как они создаются и уничтожаются ежедневно, а сайт создает URL-адрес на лету (а не из какой-то базы данных или чего-то еще).
По многим сложным причинам у меня есть доступ только к Excel для выполнения этой задачи (ура!). Я написал (плохой) код, чтобы открыть Internet Explorer, перейти по короткому URL-адресу, а затем скопировать новый адрес во все, что нужно. Это работает, но невероятно медленно (как и следовало ожидать). Мне интересно, есть ли решение, которое не требует ожидания открытия IE, но работает исключительно в VBA?
Я нашел много способов узнать, происходит ли перенаправление, и я нашел много способов получить заголовки, однако мне еще предстоит найти способ получить конечный URL-адрес. В основном они сосредоточены на WinHTTP.WinHTTPRequest.5.1, однако кажется, что нет никакого WinHTTPResponse для вызова (например, HttpResponse в .NET), поддерживаемого Excel.
Любая помощь будет принята с благодарностью, спасибо!
РЕДАКТИРОВАТЬ: на этот вопрос ответили в другом сообщении на форуме Reddit Excel. Ответ, который мне был нужен, был .Option(1) после .Send (если кому-то еще это нужно).