Como passar variaveis do VBA para o LISP

Sim nerd é possível!!! e sem aquele recurso de usar as variaveis de sistema!! navegando na net encontrei um esquema jóia!!!
Vamos lá então, veja o código VBA:


Function ReadLispVariable(varname As String) As Variant
Dim VL As Object
If VL Is Nothing Then
Set VL = CreateObject("VL.APPLICATION.16")
End If

With VL.ActiveDocument.Functions
Set SYM = .Item("read").funcall(varname)
ReadLispVariable = .Item("eval").funcall(SYM)
End With
End Function

Sub SetLispVariable(varname As String, value As Variant)
Dim VL As Object
Dim SYM As Object

If VL Is Nothing Then
Set VL = CreateObject("VL.APPLICATION.16")
End If

With VL.ActiveDocument.Functions
Set SYM = .Item("read").funcall(varname)
.Item("set").funcall SYM, value
End With
End Sub

'para testar, rode esta macro primeiro:
Sub setar()
SetLispVariable "nomevar", "Funciona!!"

End Sub

'depois rode esta:
Sub pegar()
MsgBox ReadLispVariable("nomevar")
End Sub

E por fim, experimente isto:
no console do visual lisp (ou na linha de comando do cad), faça:
(setq muitobom “que beleza!!!”)

depois edite a macro “pegar” para ficar assim:


Sub pegar()
MsgBox ReadLispVariable("muitobom")
End Sub

E veja os resultados!!

1 comentário em “Como passar variaveis do VBA para o LISP”

Deixe um comentário

Carrinho de compras
Rolar para cima