Visual Basic - Extraer de una cadena,subcadenas separadas x comas

Life is soft - evento anual de software empresarial
 
Vista:

Extraer de una cadena,subcadenas separadas x comas

Publicado por xavi (15 intervenciones) el 07/11/2006 22:01:14
Hola

Tengo una cadena (string) en la cual tiene varios nombres de imágenes (per ejemplo: imagen1,imagen2,imagen3,...). Necesito extraer de esta cadena cada nombre de la imagen por separados.

Saludos y gracias

Xavi
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:Extraer de una cadena,subcadenas separadas x co

Publicado por CSO (28 intervenciones) el 07/11/2006 22:47:26
Option Explicit

Dim cadena As String
Dim subcadena As String
--------------------------------------------------------------
Private Sub Command1_Click()
cadena = " imagen1,Imagen2"
Dim nc As Integer
Dim i As Integer
Dim tcn As String
nc = Len(cadena)
For i = 1 To nc
tcn = Mid(cadena, i, 1)
If tcn = "," Then
Label1 = subcadena
Else
subcadena = subcadena & tcn
End If
Next i
End Sub

espero te sirva de 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

RE:Extraer de una cadena,subcadenas separadas x co

Publicado por xavi (15 intervenciones) el 07/11/2006 23:51:47
Hola de nuevo:

Te explico mi problema con detalle. Tengo una tabla y en un campo tengo el nombre de imágenes asociadas a ese registro. El problema viene cuando tengo más de una foto vinculada. Había pensado en separar el nomre de las imágenes por comas en esa celda y después ir extrayendo cada uno de los nombres.

Actualmente me funciona cuando solamente tengo una imagen

¿Qué debo hacer?

Saludos y gracias

Xavi
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
sin imagen de perfil
Val: 7
Ha aumentado su posición en 2 puestos en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Extraer de una cadena,subcadenas separadas x co

Publicado por El Viejo Charles (262 intervenciones) el 08/11/2006 07:35:57
Creo que en el ejemplo del colega anterior no tiene en cuenta cuando es la ultima palabra, con eso solo te agrega la palabra Imagen1, la otra palabra no la tiene en cuenta porque no finaliza con una coma, en fin...
Si lo que quieres es que al extraer la subcadena estas te sean colocadas en cada celda de una grilla entonces esto te debe servir ( para que este ejemplo te funcione, coloca en un formulario un FlexGrid y un boton de comando, luego agrega este codigo:

Private Sub Command1_Click()
Dim Cadena As String, subcadena As String, _
Caracter As String, I As Integer, X As Integer
With MSFlexGrid1
.Clear
.Cols = 1
.Rows = 1
.FixedCols = 0
.FixedRows = 0
Cadena = "imagen1,Imagen2,Imagen3"
For I = 1 To Len(Cadena)
Caracter = Mid(Cadena, I, 1)
If I = Len(Cadena) Or Caracter = "," Then
If I = Len(Cadena) Then
subcadena = subcadena & Caracter
End If
.TextMatrix(.Rows - 1, 0) = subcadena
.Rows = .Rows + 1
subcadena = ""
Else
subcadena = subcadena & Caracter
End If
Next I
.Rows = .Rows - 1
End With
End Sub


espero y sea lo que necesitas, suerte mi viejo
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