Ciao a tutti

Espongo il mio problema:
Ho collegato uno strumento di misura di temperatura al pc tramite rs232 e vorrei visualizare i dati ricevuti in una textbox, e fino qui tutto bene solo che lo strumento invia 1 carattere alla volta e non riesco a comporre la stringa di testo come vorrei visualizzarla.
Un esempio:
Private Sub Form_Load()
MSComm1.Settings = "19200,N,8,1"
MSComm1.CommPort = 9
MSComm1.InputLen = 1
MSComm1.PortOpen = True
MSComm1.RThreshold = 1
End Sub
Private Sub MSComm1_OnComm()
Dim StrData As Variant 'define variable type as it is variant
StrData = MSComm1.Input
Text1.Text = Text1.Text & StrData

End Sub
ed il risultato è questo:
Flow[l/h]: +0.00 Temp[C]: +21.0,Flow[l/h]: +0.00 Temp[C]: +21.0,Flow[l/h]: +0.00 Temp[C]: +21.0,
Flow... ecc...
Tutto scritto su una riga,allora ho messo un enter alla fine cosi':
Text1.Text = Text1.Text & StrData & vbCrLf
ed il risultao è questo:
F
l
o
w
[
l
/
h
]
:

+
0
.
0
0


T
e
m
p
[
C
]
:

+
2
1
.
1
,
ecc...

Quindi deduco che lo strumento invia 1 lettera alla volta quindi dovrei creare un buffer che mi contenga la stringa da stampare completa ma pur avendo seguito degli esempi non riesco.
dovrei ottenere questo risultato:

Flow[l/h]: +0.00 Temp[C]: +21.1
Flow[l/h]: +0.00 Temp[C]: +21.1
Flow[l/h]: +0.00 Temp[C]: +21.1
Flow[l/h]: +0.00 Temp[C]: +21.1
ecc...
L'ultima mia prova è stata:


Private Sub MSComm1_OnComm()
Dim RxBuffer$
Dim Pos As Integer
Dim Rx$
Dim Pacchetto$


Rx$ = MSComm1.Input
If Len(Rx$) = 0 Then Exit Sub


RxBuffer$ = RxBuffer$ & Rx$


If Left$(RxBuffer$, 1) <> "F" Then

Pos = InStr(RxBuffer$, "F")
RxBuffer$ = Mid$(RxBuffer$, Pos)
If Len(RxBuffer$) = 0 Then

Exit Sub
End If
End If


Do
Pos = InStr(RxBuffer$, ",")
If Pos = 0 Then Exit Do


Pacchetto$ = Mid$(RxBuffer$, 2, Pos - 2)

RxBuffer$ = Mid$(RxBuffer$, Pos + 1)


Pos = InStr(Pacchetto$, "F")
If Pos Then

Pacchetto$ = Mid$(Pacchetto$, Pos + 1)

End If


Loop

Text1.Text =Pacchetto$

End Sub
Mi restituisce
"errore di rountine 5"
"chiamata di rountine o argomento non valido"

facendo il debug si ferma qui:

RxBuffer$ = Mid$(RxBuffer$, Pos)
Scusate la lunghezza del post ma dopo 2 giorni che sto provando mi affido a voi.
Grazie