Re: VBA button to send command to serial port to get data and send to Excel
I will have a look at these. Thank you very much!
Re: VBA button to send command to serial port to get data and send to Excel
I will have a look at these. Thank you very much!
Re: VBA button to send command to serial port to get data and send to Excel
its a device to measure the pull force of wires
Re: VBA button to send command to serial port to get data and send to Excel
Hi Pike,
Its the KMF ACM 500
Hi guys,
My code for my project was developed based on Pikes code in http://www.ozgrid.com/forum/showthread.php?t=168472&page=2
I tested my code with an equipment that it comes with a "Trasnfer Data" button on it (this sends the data from the serial port to a specified cell in excel), but, now, I'm trying to create a button in excel, which will do the same thing as the "Transfer data" send to command to the serial port to get data off the equipment and input into a specific cell (say B5).
Here's the code i have for the button, but i kept getting error message about the #COM1file
[FONT=Verdana]Public Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
[/FONT]
Sub Receive_COM1()
Dim COM1file As Integer
Dim timeout As Date
Dim record As String * 11, emptyRecord As String * 11
Dim recLen As Integer
Dim inputByte As Integer
recLen = Len(record)
COM1file = FreeFile
Open "COM1:4800,E,7,2" For Random As #COM1file Len = recLen
'Monitor port for 30 seconds
timeout = Now + TimeValue("00:00:30")
Debug.Print "Started"
While Now < timeout
Get #COM1file, , record
If record <> emptyRecord Then
Debug.Print Now; "<" & record & ">"
'Display each byte
For i = 1 To recLen
inputByte = Asc(Mid(record, i, 1))
If inputByte = 0 Then
'No character in this position
ElseIf inputByte >= 32 And inputByte <= 126 Then
'Printable character
Debug.Print "<" & inputByte & "> "; Chr(inputByte)
Else
'Non-printable character
Debug.Print "<" & inputByte & ">"
End If
Next
End If
DoEvents
Sleep 200
Wend
Close #COM1file
Debug.Print "Finished"
End sub
Display More
Hope its make sense for you. Thanks.
Regards,
Xin