This is a guess since I can't test. I added to C15 and beyond since that was what the code said, not the ...
For instance, the first reading would populate A15. The second would populate A16. The third would populate A17 and so forth
A15 etc. and since col A had a lot of stuff in it
Public Sub Connect()
Dim strSettings As String, strData As String
Dim intPortID As Integer
Dim lngStatus As Long
Dim rData As Range ' <<<<<<<<<<<<<<<<<<<<<<<<<<<
strData = ""
strSettings = ""
Sheet1.Range("C15").Value = ""
With Sheet1
Set rData = .Range("C15") ' <<<<<<<<<<<<<<<<<<<<<<<<<<<
If .Range("A63").Value = True Then
strSettings = "baud=" & Left(.Range("D5").Value, Len(.Range("D5").Value) - 3) & " parity=" & Left(.Range("D7").Value, 1) & " data=" & .Range("D6").Value & " stop=" & .Range("D8").Value
intPortID = Mid(.Range("D2").Value, 4, Len(.Range("D2").Value) - 3)
lngStatus = CommOpen(intPortID, "COM" & CStr(intPortID), strSettings)
If lngStatus = 0 Then
MsgBox "Connection to " & .Range("D2").Value & " Established!"
.Range("A64").Value = 1
Do While .Range("A64").Value = 1
lngStatus = CommRead(intPortID, strData, 1)
If lngStatus > 0 Then
' .Range("C15").Value = .Range("C15").Value & strData
rData.Value = strData ' <<<<<<<<<<<<<<<<<<<<<
Set rData = rData.offset(1, 0) ' <<<<<<<<<<<<<<<<<<<<<
End If
'Sleep 500
DoEvents
Loop
Else
lngStatus = CommGetError(strError)
MsgBox "Connection Failed. " & strError
End If
Else
MsgBox "Please Ensure All COM Setting Are Set And COM Port Selected."
End If
End With
End Sub