Domingo 17 de Noviembre de 2024, 23:43
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
»
Visual Basic para principiantes
(Moderador:
F_Tanori
) »
Utilizar Texto En Columnas De Excel
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Utilizar Texto En Columnas De Excel (Leído 2477 veces)
fakeswato
Nuevo Miembro
Mensajes: 5
Utilizar Texto En Columnas De Excel
«
en:
Jueves 1 de Mayo de 2008, 18:04 »
0
que tal, tengo este problema
enlazo visual con extra!a system (un programa de emulacion 3270)
y obtengo el siguiente string "
PEREZ CASTRO, JESUS R
" sin las comillas claro, lo que necesito es invertir el orden de la variable, para obtener nombre y despues apellidos
"
JESUS R PEREZ CASTRO
" y sin la coma "," claro
esto se podria realizar con texto en columnas con excel, pero como podria obtener el mismo resultado en visual, se me ocurria utilizar
dim
pero no se bien como hacerlo
Tweet
Nebire
Miembro HIPER activo
Mensajes: 670
Re: Utilizar Texto En Columnas De Excel
«
Respuesta #1 en:
Jueves 1 de Mayo de 2008, 23:39 »
0
Puedes usar la instrucción split con un bucle. Split corta cadenas por determinados caracteres y cada trozo lo introduce en una matriz.
Te ilustro con un ejemplo como se usa:
Código: Text
public function invertir_palabras(entrada as string) as string
dim salida as string
dim n() as string
dim p() as string ' albergará las plabras que existan en la cadena de entrada, split redimensiona la matriz al tamaño preciso
n=split(entrada, ",") ' divide la cadena en 2 subcadenas, se supone que siempre existe esa coma....
if instr(" ", n(1))<>0 then ' el nombre es compuesto
p= split(n(1), " ") ' dividimos el nombre compuesto en tantos como haya
salida= p(0) ' si lo metemos en el bucle se añadiría un espacio delante, auqneu siempre podríamos quitarlo con trim...
for k= 1 to ubound(p)
salida= salida & " " & p(k)
next
else
Salida= n(1)
end if
salida= salida & " " & n(0) ' finalmente añadimos los apellidos
invertir_palabras= salida
end function
«Ma non troppo»
----> ModoVacaciones = False<----
fakeswato
Nuevo Miembro
Mensajes: 5
Re: Utilizar Texto En Columnas De Excel
«
Respuesta #2 en:
Viernes 2 de Mayo de 2008, 15:56 »
0
OK, no era precisamente lo que buscaba, pero me abrio la puerta al codigo que estaba buscando,
GRACIAS
Código: Text
cp$ = Sess0.Screen.GetString(8, 17, 5)
nom = Split(Sess0.Screen.GetString(4, 1, 27), ",")
apellido = Split(nom(0), " ")
Sess0.Screen.PutString " ", 3, 6
Sess0.Screen.PutString apellido(0), 3, 6
Sess0.Screen.PutString " ", 3, 28
Sess0.Screen.PutString apellido(1), 3, 28
Sess0.Screen.PutString " ", 3, 52
Sess0.Screen.PutString nombre(0), 3, 52
Sess0.Screen.PutString " ", 3, 61
Sess0.Screen.PutString nombre(1), 3, 62
bueno esto me genera otra inquietud, de la base de datos tengo otros nombres, que implica otros detalles, ejemplo:
DE ALBA HADDAD,FELICIANO
el apellido tiene tres palabras, para poder accesar a la informacion la tendria que ingresar de la siguiente manera
Citar
PAT
DE ALBA
MAT
HADDAD
FIRST
FELICIANO
MIDL
2do punto
cuando el nombre contiene 2 nombre "luis gustavo" por ejemplo:
no hay problema con el codigo antes mencionado, pero cuando el nombre solo tiene uno "maria" me manda el error fuera de indice, ya que
nombre(1)
no se ha generado, cual seria la condicion para que el sistema detecte si se creo o no la variable
nombre(1)
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
Visual Basic 6.0 e inferiores
»
Visual Basic para principiantes
(Moderador:
F_Tanori
) »
Utilizar Texto En Columnas De Excel