Cómo extraer una cadena de caracteres que se encuentra antes del carácter #
Resuelto
traderpierre
Mensajes publicados
316
Estado
Miembro
-
traderpierre Mensajes publicados 316 Estado Miembro -
traderpierre Mensajes publicados 316 Estado Miembro -
Bonjour,
Para extraer los caracteres que se encuentran antes del carácter # en un campo de hipervínculo en Access, puedes utilizar la función `InStr` para encontrar la posición de ese carácter y luego usar la función `Left` para obtener los caracteres anteriores. Aquí tienes un ejemplo de cómo hacerlo:
```sql
Left([Producto], InStr([Producto], "#") - 1)
```
Esta expresión te devolverá todo el texto antes del carácter #. Asegúrate de que el campo `[Producto]` realmente contenga el carácter #, de lo contrario, la función `InStr` devolverá 0 y puede generar un error.
Si no estás seguro de que el carácter # siempre estará presente, puedes agregar una verificación para evitar errores. Aquí tienes un ejemplo mejorado:
```sql
IIf(InStr([Producto], "#") > 0, Left([Producto], InStr([Producto], "#") - 1), [Producto])
```
Esta fórmula devolverá el texto antes de # si existe; de lo contrario, simplemente devolverá el contenido original de `[Producto]`.
Espero que esto te ayude. ¡Buena suerte!
Para extraer los caracteres que se encuentran antes del carácter # en un campo de hipervínculo en Access, puedes utilizar la función `InStr` para encontrar la posición de ese carácter y luego usar la función `Left` para obtener los caracteres anteriores. Aquí tienes un ejemplo de cómo hacerlo:
```sql
Left([Producto], InStr([Producto], "#") - 1)
```
Esta expresión te devolverá todo el texto antes del carácter #. Asegúrate de que el campo `[Producto]` realmente contenga el carácter #, de lo contrario, la función `InStr` devolverá 0 y puede generar un error.
Si no estás seguro de que el carácter # siempre estará presente, puedes agregar una verificación para evitar errores. Aquí tienes un ejemplo mejorado:
```sql
IIf(InStr([Producto], "#") > 0, Left([Producto], InStr([Producto], "#") - 1), [Producto])
```
Esta fórmula devolverá el texto antes de # si existe; de lo contrario, simplemente devolverá el contenido original de `[Producto]`.
Espero que esto te ayude. ¡Buena suerte!
Enlaces relacionados:
- Extraer una cadena contenida entre comillas, Excel 2010
- Extraer los datos de una celda antes de una coma...
- Excel: extraer el texto después de un carácter
- Fórmula de Excel: "SI" una celda contiene una palabra, entonces ?
- Excel: Si contiene *parte texto1* O *parte texto2* entonces...
- Excel: ¿Cómo buscar una cadena de texto en un rango de celdas?
1 respuesta
-
Finalmente encontré esta solución que funciona a la perfección:
Extracción de cadena de caracteres Antes de un carácter específico, aquí #:
= Izquierda([Producto];Longitud([Producto])-Longitud(ExtracCadena$([Producto];EnCadena([Producto];"#"))))
Extracción de cadena de caracteres Después de un carácter específico, aquí #:
=Derecha([Producto];Longitud(ExtracCadena$([Producto];EnCadena([Producto];"#")))-1)