Access - Copiar parte de un campo

 
Vista:

Copiar parte de un campo

Publicado por Judit (5 intervenciones) el 04/06/2007 18:18:29
Buenas tardes!!

Hay alguna manera de copiar el texto de un campo hasta que encuentre un espacio en blanco?

Me explico, tengo un campo donde se guarda una descripcion de un procucto y quiero desplegar el contenido de ese campo en una consulta solo hasta el primer espacio que encuentre.

ej.

"Hola todo el mundo"

Quisiera que en la consulta me saliera "Hola"

Gracias anticipadas

Saludos
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:Copiar parte de un campo

Publicado por antperlop (72 intervenciones) el 04/06/2007 18:47:33
No se si habrá algo establecido para hacer esto pero yo hice algo parecido para quitar los puntos y las comas.

Function QUITACOMA(CampoNOmbre As String) As String
Dim CAMPO As String
Dim l As integer
l = 0
CAMPO = CampoNombre
For I = 1 To 40
l = l + 1
If Mid(ApeNom, I, 1) = "," Or Mid(CampoNombre, I, 1) = "." Then
CAMPO = Mid(CampoNombre, 1, l - 1)
CAMPO = CAMPO & Mid(CampoNombre, I + 1, 40 - l)
Exit For
End If
Next I
QUITACOMA = CAMPO

End Function
------------------------------------------------------------------------------------------------------------
LO tuyo quedaria así:

Function HastaAqui(CampoNOmbre As String) As String
Dim CAMPO As String
Dim l As integer
l = 0
CAMPO = CampoNombre
For I = 1 To 40 ' En este caso, CampoNombre tiene 40 de longitud
l = l + 1
If Mid(ApeNom, I, 1) = " " Then
CAMPO = Mid(CampoNombre, 1, l - 1)

Exit For
End If
Next I
HastaAqui = CAMPO
End Function

En tu consulta lo llamarias asi NombreCampo:HastaAqui([el campo que tratarás])

End Function
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:Copiar parte de un campo

Publicado por Judit (5 intervenciones) el 04/06/2007 19:05:02
gracias por responder, pero lo necesito para hacer una consulta en el mismo access. Hacer un query en access con esa especficacion

Gracias
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:Copiar parte de un campo

Publicado por antperlop (72 intervenciones) el 04/06/2007 22:38:06
Naturalmente lo que te he mandado es una función para hacerla en access. Entras en modulo y pega lo que te he mandado, luego en la consulta pones un campo tal como te he indicado y lo podras sacar en un informe.
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:Copiar parte de un campo

Publicado por Chea (1015 intervenciones) el 04/06/2007 22:59:26
Para este tipo de cosas también resulta muy útil la función Split()

Split() convierte una cadena en un Array de texto utilizando el separador que le digamos; en este caso sería " ".

Podemos hacer:

Function HastaAqui(CampoNOmbre As String) As String
Dim v as Variant
v =Split (CampoNOmbre ," ")
HastaAqui = v(0)
End Function

Split() no estaba en las primeras versiones de Access, ni de VB. Está tomado de lenguajes de la competencia de Microsoft y, como ves, resulta muy útil para determinadas cosas.

La pareja de Split() es Join(), que hace justo lo contrario: une los elementos de una matriz en una cadena separados por el carácter que le indiquemos.

Para quitar las comas y puntos, también tenemos en las últimas versiones la función replace. Sería tan sencillo como:

SinPuntos = Replace (Micadena,".","")

Saludos
José Bengoechea Ibaceta
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