Mostrar una letra de un campo

Hola amigos expertos
Quisiera ver si alguien seria tan amable de ayudarme, necesito mostrar un campo de texto en un informe pero necesito separarlo, ya se mostrar letra por letra o separador por rayas o cuadros etc. Mi problema es el siguiente
Tengo un campo llamado clave: = melm900829mslp y necesito mostrarlo de la siguiente manera M E L M 9 0 0 8 2 9 M ES L P : ENTRE CADA LETRA DEBE IR UNA RAYA VERTICAL, AHÍ UNA OPCIÓN EN EXCEL LA CUAL PUEDO MOSTRAR SOLO UNA LETRA DEL CAMPO NO SE SI HAY ALGO PARECIDO EN ACCESS O LO PUEDO SEPARAR
Agradecería mucho su ayuda
Diana

1 respuesta

Respuesta
1
Debes escribir en Access tu propia función para que ello ocurra.
Los pasos son los siguientes.
1) Debes crear un módulo nuevo. Se te abrirá el editor VBA y allí deberás pegar el siguiente código (la programación de la función):
Function separar(datoClave As String, separador As String) As String
 Dim largo As Integer, x As Integer
 Dim letra As String, resultado As String
 largo = Len(datoClave)
 For x = 1 To largo
  letra = Mid(datoClave, x, 1)
  resultado = resultado + letra + separador
 Next x
 separar = Left(resultado, Len(resultado) - 1)
End Function

2) Luego debes guardar el módulo dándole un nombre.
3) Puedes probar si el uso de la función a través de una Consulta o Query en la cual utilizarás en la primera columna: el campo Clave de la tabla de datos y en la segunda columna la siguiente expresión: separar([dato];"-")
En la grilla de diseño de la consulta te quedará Expr1: separar([dato];"-")
Ten en cuenta que el guión puede ser reemplazado por una barra diagonal, un asterisco, un espacio o lo que quieras utilizar como separador. Por otro lado puede que en tu Access por cuestiones de configuración, no funcione el punto y coma y debas usar una coma y quedaría: Expr1: separar([dato],"-")
Cuando corras la consulta, el dato melm900829mslp se verá como: m-e-l-m-9-0-0-8-2-9-m-s-l-p
Recuerda que si en lugar de guiones quieres espacios u otro separador solo tienes que indicarlo en la función. Ejemplo: Expr1: separar([dato];"*")
Espero que te resulte de utilidad
Saludos
Diego


Añade tu respuesta

Haz clic para o

Más respuestas relacionadas