Visual Basic - Ayuda con código fácil

Life is soft - evento anual de software empresarial
   
Vista:

Ayuda con código fácil

Publicado por Carlos andyvelezr@gmail.com (9 intervenciones) el 03/04/2016 02:26:44
Buenas tardes,

Estoy desarrollando un programa que me genere un archivo .txt donde la información captada por formularios se ubiquen en posiciones exactas en el archivo.

Ya tengo el formulario con los campos que me genera el .txt, pero no he logrado ubicar cada uno de los datos en las posiciones que requiero.

Les agradecería mucho que me dieran ideas de como ubicar esos datos en el archivo de texto.

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
Imágen de perfil de Andres Leonardo

Ayuda con código fácil

Publicado por Andres Leonardo (702 intervenciones) el 03/04/2016 21:32:43
Carlos para que te podamos entender mejor por favor coloca un formato de lo que obtienes en el txt y lo que quieres objtener.

Entiendo que quieres dar dimensiones fijas a los campos... ejemplo en nombre en la 1 el segundo nombre en la 10 y asi .. pero danos un detalle o ejemplo

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

Ayuda con código fácil

Publicado por Carlos (9 intervenciones) el 04/04/2016 02:39:20
Hola gracias

Adjunto el txt.

La primera linea es lo que quiero, y la segunda linea es lo que he podido hacer.

Todos los registros que agregue tienen que quedar como la primera línea.
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
Imágen de perfil de Andres Leonardo

Ayuda con código fácil

Publicado por Andres Leonardo (702 intervenciones) el 04/04/2016 02:54:10
Carlos con gusto te ayudo... solo una cosa...

prefieres que yo te envie una función donde el mandes el texto y lo formates como tu quieres... y luego de eso te toca concatenar a ti los resultados

O me pasas tu codigo y te lo adapto???

Quedo atento.

el codigo es sencillo es de usar el comando format y luego le mandas dimensiones y concatenar datos



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'Esto lo que hace es concaternar los datos dependiendo de los valores
t = es el texto qeu quieres formatear
l  = la longitud del texto o del campo
o = la orientacion si priomero va el campo  y luego el relleno (como nombre ) o primero el relleno y luego el campo (para valores)
C = es el caractere con el que rellenas
luego vas concatenando los resultados cualquier duda me avisas
 
 Sub formatea(t As String, l As Integer, o As String, c As String)
Dim f As String
For i = 1 To l - Len(t)
    f = f & c
Next i
 
If o = "i" Then
    s = t & f
Else
    s = f & t
End If
End Sub
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

Ayuda con código fácil

Publicado por Carlos (9 intervenciones) el 04/04/2016 02:59:41
Andrés muchas gracias por tu colaboración

Mira te adjunto lo que tengo.
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
Imágen de perfil de Andres Leonardo

Ayuda con código fácil

Publicado por Andres Leonardo (702 intervenciones) el 04/04/2016 03:11:17
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
'Esto lo que hace es concaternar los datos dependiendo de los valores
't = es el texto qeu quieres formatear
'l  = la longitud del texto o del campo
'o = la orientacion si priomero va el campo  y luego el relleno (como nombre ) o primero el relleno y luego el campo (para valores)
'C = es el caractere con el que rellenas
'luego vas concatenando los resultados cualquier duda me avisas
 
 Sub formatea(t As String, l As Integer, o As String, c As String)
Dim f As String
For i = 1 To l - Len(t)
    f = f & c
Next i
 
If o = "i" Then
    s = t & f
Else
    s = f & t
End If
End Sub
Espero que te ayude no tengo el visual estudio 2012 pero mañana en mi trabajo de ley .. ahi te paso
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Andres Leonardo

Ayuda con código fácil

Publicado por Andres Leonardo (702 intervenciones) el 04/04/2016 03:20:36
Tu haces esto

Dim campo01 = novedad_cb

Entonces podrias hacerla una funcion que devuelva el string y te quedaria asi

1
Dim campo01 = formatea ( novedad_cb,20,i," ")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Andres Leonardo

Ayuda con código fácil

Publicado por Andres Leonardo (702 intervenciones) el 04/04/2016 04:23:06
Ahora si
pude hacer la funcion.. mira en tu codigo si te funciona bien

1
2
dim campo as string
campo =  formatea (novedad_cb,20,i,"0")  ' de 20 digitos a la izq el relleno y de ceros como si fuera valor.

Asi podras quedarte como deseas .. ahora .. concatenas tus campos y listo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
'Funcion Formatea
'Esto lo que hace es concaternar los datos con formato qeu desees  dependiendo de los valores
't = es el texto qeu quieres formatear
'l  = la longitud del texto o del campo
'o = la orientacion si priomero va el campo  y luego el relleno (como nombre ) o primero el relleno y luego el campo (para valores)
'C = es el caractere con el que rellenas
Public Function formatea(t As String, l As Integer, o As String, c As String)
Dim f As String
If Len(t) <= l Then
    For i = 1 To l - Len(t)
        f = f & c
    Next i
 
    If o = "i" Then
        formatea = t & f
    Else
        formatea = f & t
    End If
Else
  formatea = Mid(t, 1, l)
End If
End Function
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

Ayuda con código fácil

Publicado por Carlos (9 intervenciones) el 06/04/2016 03:21:29
Hola Gracias por tu colaboración, pero tengo una duda.

¿En qué momento declaro la variable i?

Muchas 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