Access - Enrollado con Extraer

   
Vista:

Enrollado con Extraer

Publicado por Marcos Nicolas (53 intervenciones) el 12/09/2011 21:05:21
He visto varios ejemplos de cómo extraer caracteres determinados de una cadena de texto
pero no logro encontrar nada parecido a lo que necesito.
Por ejemplo, en una cosnulta tengo un campo con lo sgte.
2-2011
5-2011
27-2011
4-2011

Lo que necesito extraer son los primeros dígitos antes del guion.
Es decir:
2
5
27
4

En excel se me hace muy fácil pero en acces no he podido hacerlo.
Gracias por sy ayuda.

MN
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

Enrollado con Extraer

Publicado por Marcos Nicolas (53 intervenciones) el 13/09/2011 02:03:56
A veces hace bien dejar por un rato el computador y despejarse. Luego de unos minutos lo que intentaste tantas veces te resulta a la primera.

Resultado: Izq([CampoTexto],(EnCad([CampoTexto],"-")-1))

Gracias a todos.

MN
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

Enrollado con Extraer

Publicado por 2pl (461 intervenciones) el 13/09/2011 09:37:05
Supongo que habrá alguna que otra función que haga eso, pero esto tambien lo hace, asi que create un función

Function ExtCar(CAMPO As String) As String
for I=1 to longitud de CAMPO
if mid(CAMPO,I,1)="-" then
ExtCar=mid(CAMPO,1,I-1)
exit for
next

Explicación:
En tu consulta, formulario,informe etc...
Al llamar a la función ExtCar, te devolverá en el campo que tu pongas (en este caso, CampoExt) lo que tu quieres.
CampoExt:ExtCar(nombre_del_campo_en_la_tabla)
PD: Espero haberme explicado correctamente.
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

Enrollado con Extraer

Publicado por Marcos Nicolas (53 intervenciones) el 13/09/2011 13:14:32
Gracias 2PL.
Se entiende perfectamente.
Y me sirve un montón, ya que prefiero de esta forma que hacerlo directamente en la consulta.
Gracias nuevamente.

MN
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