Programación General > Visual Basic 6.0 e inferiores

 Se Me Ha Olvidado

(1/2) > >>

ElNapster:
:P  Perdon por esta preguntita pero en realidad no me recuerdo como se hace esto... si yo tengo este string "10,11,120,13" y yo quiero sacar cada parte del string para que quede asi :
"10"
"11"
"120"
"13"
para yo por cada numero y haga un proceso igual pero le envio como parametro el numero que acabo de obtener ... como elaboro ese proceso .... :(
Gracias por la ayuda... :kicking:

albertovicat:
Si querés hacer un proceso propio tuyo, creo que es un ejercicio interesante. Pero VB6 tiene una función para eso:

Vari = Split("10,11,120,13", ",")

Esto crea un array Vari(0 To 3) que contendrá:

Vari(0) = "10"
Vari(1) = "11"
Vari(2) = "120"
Vari(3) = "13"

El segundo argumento después de la coma que sigue a la comilla doble después del 13, y que está a su vez entre comillas dobles, es la coma que sirve como separador en tu caso. Confunde un poco  <_<  lo de comas y comillas, suponte que tus números estuvieran separados por una x minúscula, entonces sería:

Vari = Split("10x11x120x13", "x") ... creo que ahora se entiende mejor.  :)

Saludos

mamex:
Hola que tal, mira para poder separar cada elemento, cuya separación es una coma yo desarrollé ésta función, y cada elemento lo mete en un collection, que es lo que te regresa la función. Espero y te sirva.


--- Código: Text --- 'De un string, que tiene elementos separados por comas, los saca y los mete en un collectionPublic Function separaElementosPorComa(texto As String) As Collection    Dim inic As Integer, coma As Integer    Dim a As Collection    Dim elemento As String    Set a = New Collection    inic = 0    coma = 1    While coma &#60;&#62; 0        coma = InStr(inic + 1, texto, &#34;,&#34;)        'Si encontró la coma        If coma &#62; 0 Then            elemento = Trim(Mid(texto, inic + 1, coma - inic - 1))        Else            elemento = Trim(Mid(texto, inic + 1, Len(texto) - inic))        End If        If elemento &#60;&#62; &#34;&#34; Then a.Add elemento        inic = coma + 1    Wend    Set separaElementosPorComa = aEnd Function  
A ésta parte no te entendí

--- Citar ---para yo por cada numero y haga un proceso igual pero le envio como parametro el numero que acabo de obtener ... como elaboro ese proceso ....   :(

--- Fin de la cita ---

ElNapster:
Gracias amigos .... me ha servido de mucho con respecto a esto


--- Código: Text ---para yo por cada numero y haga un proceso igual pero le envio como parametro el numero que acabo de obtener ... como elaboro ese proceso ....    
esque por cada data que obtenga del string tengo que hacer un rutina que recibira como parametro el dato que estoy obteniendo , y luego obtengo el siguiente dato del string y se lo vuelvo a enviar a la rutina y asi sucesivamente.....  :rolleyes:

Gracias...... :kicking:

mamex:
Ok, pues ya está fácil, si ocupas mi función lo harias de ésta manera:


--- Código: Text --- Private Sub principal()    Dim elementos As Collection    Dim elem    Set elementos = separaElementosPorComa(&#34;10,11,120,13&#34;)    For Each elem In elementos         rutina (elem)    NextEnd Sub  
OJO, al parecer me equivoqué en la línea

--- Citar ---         inic = coma + 1
   Wend
   Set separaElementosPorComa = a
End Function

--- Fin de la cita ---

En vez de ser  

--- Código: Text ---        inic = coma + 1       
tiene que ser  

--- Código: Text ---        inic = coma  

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa