Cómo importar registros de Excel a Access campo memo

Quería dejar esta duda a ver si alguien puede ayudarme.

Importando información de archivos Excel a Access me he encontrado con el problema de que, excepto cuando se trata de pocos registros, aquellos campos que contienen celdas con texto superior a 255 caracteres me los corta.

En la tabla de Access de destino he definido esos campos como memo, pero no sirve de nada. He probado a copiar y pegar, a importar desde la cinta de opciones, o a partir de código con el método DoCmd. TransferspreaSheet ...; pero me corta en 255 en cada caso.

He echado un vistazo a preguntas planteadas por otros usuarios y relacionadas con esto, pero no he visto respuesta a un caso del mismo tipo.

1 Respuesta

Respuesta
1

[Hola

Como para comenzar, sugiero dar una revisada a esto:

https://living-sun.com/es/access-vba/237-long-text-gt-255-chars-truncated-while-importing-and-adding-to-existing-table-in-ms-access-2013-access-vba-ms-access-2013.html

Abraham Valencia

¡Gracias! Ahora no puedo hacerlo, pero probaré la segunda solución del enlace porque se trata de archivos con más de 65000 registros y no podría copiar y pegar. Ya comentaré si me ha funcionado

Hola de nuevo,

Lo siento si se repite el mensaje, porque lo he enviado dos veces; pero como no veo que quede nada publicado, supongo que hay algún problema con la página y las veces anteriores no se envia.

He probado la segunda solución propuesta por el enlace. En Access me manejo bien para mi trabajo diario, pero mis conocimientos de Excel son relativamente escasos, así que me he encontrado con dos problemillas:

El primero, que tras escribir la fórmula con la función LEN he visto que esto se puede hacer con una celda, no con una columna (como yo pensaba). Habría que escribir la fórmula en cada una de las celdas de la columna. Con mas de 65000 registros es una tarea inabarcable por cuestiones de tiempo.

El segundo, es que la función LEN no se recoge en la cinta de opciones de Excel.

Tanto para usar esta función, como para crear un bucle que recorriera toda la columna y permitiera copiar en otra la longitud de las cadenas, habría que recurrir a VBA Excel. Tengo conocimientos básicos de VBA para Acces, pero no para Excel y (aunque esencialmente coincidan) supongo que me llevará tiempo aprender los elementos básicos para Excel ¿Sabrías de alguna otra solución alternativa que no implique código VBA?

Una forma más fácil es esta:

https://stackoverflow.com/questions/15249753/truncated-data-when-importing-from-excel-to-an-access-memo-field

Pero tienes que estar 100% seguro de que se cumplen los parámetros sugeridos para las primeras filas.

Abraham Valencia

¡Gracias Abraham! 

Perfecto, me ha venido muy bien el enlace. En principio, ya con la solución que proponen de crear una primera fila falsa me ha funcionado. Probaré de todas formas la solución que propone cambiar la configuración del asistente de importación.

De nuevo te agradezco tu ayuda.

Un saludo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas