Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Como recuperar parte del string de un List1?

Estas en el tema de Como recuperar parte del string de un List1? en el foro de Visual Basic clásico en Foros del Web. Tengo un List1 con estos datos a modo de ejemplo, digamos que codigo y nombre del producto 01-productoA 02-productoB 452-productoC 800-productoD 8001-productoE Lo que necesito ...
  #1 (permalink)  
Antiguo 10/07/2009, 19:22
 
Fecha de Ingreso: junio-2008
Mensajes: 343
Antigüedad: 15 años, 10 meses
Puntos: 4
Como recuperar parte del string de un List1?

Tengo un List1 con estos datos a modo de ejemplo, digamos que codigo y nombre del producto

01-productoA
02-productoB
452-productoC
800-productoD
8001-productoE

Lo que necesito es recuperar el string antes del guion en un text dependiendo del item que seleccion al hacer click sobre el List1
por ejemplo
si selecciono "02-productoB" me debe recuperar "02"
si selecciono "452-productoC" me debe recuperar "452"

Solo recuerdo la funcion mid pero no como decirle que coma lo que esta antes del guion?
  #2 (permalink)  
Antiguo 10/07/2009, 19:30
Avatar de FTech  
Fecha de Ingreso: julio-2009
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como recuperar parte del string de un List1?

No se si sea un problema, pero veo un poco más complejo el tema del MID, ya que al parecer no siempre son 2 cracteres o 3 caracteres en el inicio.
  #3 (permalink)  
Antiguo 10/07/2009, 19:41
 
Fecha de Ingreso: junio-2008
Mensajes: 343
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Como recuperar parte del string de un List1?

En el foro hace tiempo encontre como se hacia pero no vi el codigo exacto y no encuentro ese post, seguire buscando o si tienen la solucion ....
  #4 (permalink)  
Antiguo 10/07/2009, 19:54
Avatar de FTech  
Fecha de Ingreso: julio-2009
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como recuperar parte del string de un List1?

Disculpa una pregunta. ¿Todos los productos están separados por el guión? De ser así se podría buscar en cada cadena el guión, y a partir de esa posición "tomar" lo de la izquierda.
  #5 (permalink)  
Antiguo 10/07/2009, 21:45
 
Fecha de Ingreso: junio-2008
Mensajes: 343
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Como recuperar parte del string de un List1?

si todas las cadenas tiene el mismo formato codigo-nombre
  #6 (permalink)  
Antiguo 10/07/2009, 23:11
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Respuesta: Como recuperar parte del string de un List1?

Split()

saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #7 (permalink)  
Antiguo 11/07/2009, 09:25
Avatar de FTech  
Fecha de Ingreso: julio-2009
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como recuperar parte del string de un List1?

Exacto seba a eso me refería aqui te dejo un ejemplo:
Código VB:
Ver original
  1. Private Sub Command1_Click()
  2. Dim cadena As String
  3. cadena = Text1.Text
  4. myarray = Split(cadena, "-", -1, vbTextCompare)
  5. Label1.Caption = myarray(1) ' Devuelve lo que está luego del guión
  6. End Sub
  7.  
  8. Private Sub Form_Load()
  9. Text1.Text = ""
  10. Label1.Caption = ""
  11. Command1.Caption = "Split"
  12. End Sub
  #8 (permalink)  
Antiguo 11/07/2009, 12:11
 
Fecha de Ingreso: junio-2008
Mensajes: 343
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Como recuperar parte del string de un List1?

gracias por el codigo FTech funciona pero no he podido adaptarlo, ya intente recuperar la parte izquieda de la cadena y no e podido alguna idea.

Última edición por hunter18; 11/07/2009 a las 12:16
  #9 (permalink)  
Antiguo 11/07/2009, 12:40
Avatar de seba123neo  
Fecha de Ingreso: febrero-2007
Ubicación: Esperanza, Santa Fe
Mensajes: 1.046
Antigüedad: 17 años, 2 meses
Puntos: 19
Respuesta: Como recuperar parte del string de un List1?

proba esto haber si entendes..

Código vb:
Ver original
  1. Option Explicit
  2.  
  3. Private Sub Form_Load()
  4.    With List1
  5.       .AddItem "01-productoA"
  6.       .AddItem "02-productoB"
  7.       .AddItem "452-productoC"
  8.       .AddItem "800-productoD"
  9.       .AddItem "8001-productoE"
  10.    End With
  11. End Sub
  12.  
  13. Private Sub List1_Click()
  14.    Dim vArray() As String
  15.  
  16.    vArray = Split(List1.List(List1.ListIndex), "-")
  17.    MsgBox vArray(1)
  18. End Sub

saludos.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein
  #10 (permalink)  
Antiguo 11/07/2009, 13:38
Avatar de FTech  
Fecha de Ingreso: julio-2009
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como recuperar parte del string de un List1?

Tal cual lo hizo seba.
También aqui te dejo un código que copia el contenido en el listbox a una caja de texto

Código vb:
Ver original
  1. Private Sub Command1_Click()
  2. Dim myarray() As String
  3. For i = 0 To List1.ListCount - 1
  4.     myarray = Split(List1.List(i), "-")
  5.     Text1.Text = Text1.Text & vbNewLine & myarray(1)
  6. Next
  7. End Sub
  8.  
  9. Private Sub Form_Load()
  10. List1.AddItem "1-ARGENTINA"
  11. List1.AddItem "2-COLOMBIA"
  12. List1.AddItem "3-ECUADOR"
  13. List1.AddItem "4-BRASIL"
  14. Text1.Text = ""
  15. Command1.Caption = "SPLIT"
  16. End Sub

Un saludo
  #11 (permalink)  
Antiguo 11/07/2009, 15:23
 
Fecha de Ingreso: junio-2008
Mensajes: 343
Antigüedad: 15 años, 10 meses
Puntos: 4
Respuesta: Como recuperar parte del string de un List1?

Que tal como van, como haria para sumar los valores recuperados en caso el formato sea nombre-codigo asi:
productoA-10
productoB-20
productoC-30
Como veran ya puedo recuperar el valor con el split ahora como haria para suma lo que recupera en este caso el resultado seria 60

saludos

Última edición por hunter18; 11/07/2009 a las 16:36
  #12 (permalink)  
Antiguo 11/07/2009, 18:02
Avatar de FTech  
Fecha de Ingreso: julio-2009
Mensajes: 88
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Como recuperar parte del string de un List1?

Bien creo que con seba hicimos suficiente.

Ya sabes sacar "partes" de un string.

Ahora sacaras los valores, los cuales están como string, ahora unicamente conviertelos a int, float o lo que sea, luego los iras acumulando y sumando a la vez.

Un Saludo!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:22.