Visual Basic - Filtrar datos de entrada de mscomm

Life is soft - evento anual de software empresarial
 
Vista:

Filtrar datos de entrada de mscomm

Publicado por Eber H (4 intervenciones) el 10/07/2008 19:22:06
Hola!!
Les cuento, estoy haciendo un aplicación para pesar camiones por lo cual conecto la bascula mediante un puerto serial.
Al tener que trabajar con distintos cabezales de basculas, necesito unificar el formato de entrada de datos a mi sistema, como si fuese mi propio protocolo.
Bien, quisiera saber el método mas conveniente para llegar a estos resultados:

Posibles entradas: Me debería quedar:
044520 kg. (salto de linea) 044520
44520 044520
unoscaracteres044520demascarateres 044520

Se entiende? Yo solo quiero el peso con un formato de 6 dígitos. Sé que es mediante la función format, pero no se me ocurre como setearla para abarcar tantas posibilidades

Desde ya muchas gracias!!
__________________
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Filtrar datos de entrada de mscomm

Publicado por Eber H (4 intervenciones) el 10/07/2008 21:23:49
Aclaro para que se entienda mejor:

Posibles entradas: ------> Me debería quedar:
044520 kg. (salto de linea) ------> 044520
44520 ------> 044520
unoscaracteres044520demascarateres ------> 044520
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Filtrar datos de entrada de mscomm

Publicado por pacopaz (173 intervenciones) el 10/07/2008 23:04:11
Puedes intentar con esto

Dim i As Integer
Dim r, s As String

s = [Cadena obtenida del com]
For i = 1 To Len(s)
If IsNumeric(Mid(s, i, 1)) Then r = r & Mid(s, i, 1)
Next i
r = Format(CLng(r), "000000")

y lo que quieres está en la variable r

Espero que te sirva.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Filtrar datos de entrada de mscomm

Publicado por Eber H (4 intervenciones) el 18/07/2008 22:20:34
Muchas gracias por la ayuda!! si bien no use el codigo que me facilitaron, me dio ideas para mi problema.
al conocer bien el formato de la cadena de entrada,lo solucione de la siguiente manera:

entrada = Mid$(mscomm1.Input, 5, 6) 'desde el caracter 5, los proximos 6 que es donde se encuentrra el peso

Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar