Buenos dias estoy usando el libreoffice calc 7.5 y tengo un poblema al ejecutar una macro en Basic(o LibreOffice Basic ):
Sub leer_PS
Dim SerialPort As Object
Dim Data As String
Dim PortName As String
Dim BaudRate As Integer
Dim CellB7Value As Integer
' Configuro el nombre del puerto serie y los baudios
PortName = "COM16" '
BaudRate = 9600
' aqui abro el puerto serie
SerialPort = CreateUnoService("com.sun.star.io.SerialPort")
' Bucle infinito
Do
'Leer un byte del puerto serie
Data = SerialPort.readString(1)
' Escribir el valor en la celda A3
ThisComponent.Sheets(0).getCellRangeByName("A3").String = Data
' Leer el valor de la celda B7
CellB7Value = ThisComponent.Sheets(0).getCellRangeByName("B7").Value
' Salir del bucle si el valor de B7 es igual a 1
If CellB7Value = 1 Then
Exit Do
End If
Loop
' Cierra el puerto serie
SerialPort.closePort()
End Sub
*El error esta en que aparece un un cuadro de mensaje que dice: Error de ejecución de BASIC. y me señala en la linea de codigo: Data = SerialPort.readString(1)
Variable de objeto no establecida.
*en el codigo anterior quiero detener el bucle infinito colocando el valor de 1 en la celda B7
*estoy intentando comunicar mi arduino que tiene un sketch muy simple que envia numeros del 0 al 1023