Общение между Excel и PHP

Содержание

Мне очень нравится WinHTTP и веб-службы (особенно REST). Несмотря на то, что мне нужно немного исследовать каждую мелочь, которую я узнаю, и я только начинаю, это того стоит.

Вчера вечером я понял, как передать переменную из VBA в PHP и обратно. Другими словами, я научился передавать переменную VBA в функцию PHP (находящуюся в файле на сервере AutomateExcel), управлять переменной, а затем возвращать новый результат обратно в VBA.

Примечание. Переменная отправляется в виде строки.

Например, окно сообщения на этой картинке было получено:

1. Отправка переменной, содержащей число 15, через HTTP в файл PHP на AutomateExcel.

2. Функция PHP принимает переменную, умножает ее на 500, а затем возвращает ответ, в данном случае 7500.

3. VBA читает ответ и возвращает ответ в сообщении.

Вот как выглядит код PHP. Откройте блокнот, скопируйте и вставьте эту информацию, сохраните файл с расширением php и загрузите на свой сервер:

12345678910111213141516

Я не вернул ответ в формате XML, чтобы не усложнять пример. Вот код VBA для отправки и получения данных, измените строку подключения, чтобы она указывала на только что созданный файл php:

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 'Добавить ссылку на Microsoft WinHTTP ServicesКонстанта HTTPREQUEST_SETCREDENTIALS_FOR_SERVER = 0Private Sub GetItems ()Dim MyCon как новый WinHttpRequestDim sendthis As DoubleDim myanswer As String'переменная для отправкиsendthis = 15'Строка подключения для отправкиMyCon.Open "ПОЛУЧИТЬ", _"https://www.automateexcel.com/excel/pl/server500.php" & _"? PassThis =" & sendthis'Отправь этоMyCon.Send'верни этоmyanswer = MyCon.ResponseTextMsgBox myanswerКонец подписки

Примечание. Добавьте ссылку на Microsoft WinHTTP Services.

Это потрясающе!

Вы поможете развитию сайта, поделившись страницей с друзьями

wave wave wave wave wave