Ayuda en vb

Hola amigo tengo un problemita tengo un código que tiene la siguiente asignatura R63.5/V45EJ1 y necesito que cuando la mande a un reporte salga de la siguiente manera R63.5
V45EJ1
No lo he podido conseguir siempre me sale en forma secuencial es decir R63.5/V45EJ1 como le hago para que cuando llegue al / sepa que se debe partir en dos. Gracias por tu ayuda.
Respuesta
1
Dim Var1 as string,Var2 as String
Dim Pos as integer
Linea="R63.5/V45EJ1"
Pos = InStr(Linea, "/")
El comando InStr te devuelve la intentar del carácter que estas Buscando en el caso del ejemplo anterior yo busco el "/"
Luego usando la intentar corto el primer valor
Var1= mid(Linea,1,Pos-1)
Digo de la variable linea desde la posición 1 corte hasta la intentar del "/" pero menos uno para que no me incluya el carácter "/"
Luego digo
Var2= mid(Linea,Pos+1,len(linea-pos))
Digo de la variable linea desde la posición del "/" + uno para que no me lo incluya corte todo lo que reste desde la intentar del "/" en adelante.
Finalmente muestro
Msgbox "Primer Valor" & Var1
Msgbox "Segundo Valor" & Var2

2 respuestas más de otros expertos

Respuesta
1
Cuando dices que te salga en un reporte ¿a qué te refieres?.
Yo, por si acaso es algún valor que obtienes, lo trato como si fuera una cadena:
Dim ParteIzq As String
Dim ParteDcha As String
Dim Asignatura As String
Asignatura = "R63.5/V45EJ1"
ParteIzq = Left(Asignatura, Instr(Asignatura, "/") -1)
ParteDcha = Mid(Asignatura, Instr(Asignatura, "/") + 1)
Si no es eso intenta especificar un poco más. ;)
Respuesta
1
Eso lo hacés de la sig manera:
dim tmp() as string
dim str as string
str = "R63.5/V45EJ1"
tmp2 = Split(str), "/", -1, vbTextCompare)
Debug. Print tmp(0)
Debug. Print tmp(1)
Perdón, puse un ) de más
Donde dice
tmp2 = Split(str), "/", -1, vbTextCompare)
es:
tmp = Split(str, "/", -1, vbTextCompare
Andrés

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas