O objetivo é demonstrar de forma bem simples como enviar dados para o node-red usando o vba do Excel.
- Node-Red - Versão 1.1.0
- Excel - Versão 2016 x64
A configuração do node-red é bem simples, usamos um um node http in, um node http response um debug para poder visualizar os dados recebido. O método utilizado para a requisição http foi o POST.
Attribute VB_Name = "Módulo1"
Sub teste()
Dim hReq As Object
Dim i As Long
'url do caminho http que irá receber a requisição
strUrl = "http://localhost:1880/excel"
'célula que contém os dados a serem enviados
dados = Range("C3").Value
'configuração a conexão
Set hReq = CreateObject("MSXML2.XMLHTTP")
With hReq
.Open "POST", strUrl, False
.Send (dados) 'envia os dados
End With
response = hReq.ResponseText
End Sub
Obs.: Para o código acima funcionar corretamente temos que adicionar a seguinte referência:
Caso a orgem da requisição fosse ao contrátio, ou seja, ao invés de enviar dados(POST) gostaria de receber dados seria necessário fazer algumas mudanças.
- Alterar o node http in para o método GET:
- Alterar código vba para o cógido abaixo:
Attribute VB_Name = "Módulo1"
Sub teste()
Dim hReq As Object
Dim i As Long
'url do caminho http que irá receber a requisição
strUrl = "http://localhost:1880/excel"
'célula que contém os dados a serem enviados
dados = Range("C3").Value
'configuração a conexão
Set hReq = CreateObject("MSXML2.XMLHTTP")
With hReq
.Open "POST", strUrl, False
.Send
End With
response = hReq.ResponseText
range("C3").value = response
End Sub
Com esse pequeno 'exercício' demonstra como podemos enviar dados do excel facilmente para o Node-Red e estando estes dados no Node-Red podemos enviá-los para qualquer destino, como uma comunicação Modbustcp, OPC, PI Web API conforme já tem aqui em outros repositórios onde eu mostro como enviados dados do Node-Red para vários destinos diferentes.
Para ver detalhes da licença, clique Aqui.
Caso precisem te ajuda ou tenham alguma sugestão, deixe seu comentário Aqui.