Converter CSV a Excel: solucións para problemas comúns

  • Comparte Isto
Michael Brown

CSV non se abre correctamente en Excel? O titorial investiga problemas típicos e ofrece as solucións máis eficaces.

O formato CSV úsase habitualmente para importar/exportar datos entre varios programas de follas de cálculo. O nome CSV (valores separados por comas) implica o uso de comas para separar campos de datos. Pero iso é en teoría. Na práctica, moitos dos chamados ficheiros CSV separan os datos mediante outros caracteres como punto e coma ou tabulacións. Algunhas implementacións inclúen os campos de datos entre comiñas simples ou dobres, mentres que outras requiren unha marca de orde de bytes (BOM), por exemplo UTF-8, para a correcta interpretación de Unicode. A falta de estándar xera varios problemas coas conversións de CSV a Excel.

    O ficheiro CSV ábrese nunha columna en Excel

    Síntomas . Ao abrir un ficheiro csv en Excel, todos os datos aparecen nunha única columna.

    Causa . Para dividir os datos en columnas, Excel usa o separador de lista establecido na configuración rexional de Windows. Pode ser coma (en América do Norte e nalgúns outros países) ou punto e coma (en países europeos). Cando o delimitador usado nun ficheiro .csv particular é diferente do separador predeterminado, ese ficheiro ábrese nunha columna.

    Solucións . Existen varias solucións posibles para este caso, incluíndo macros VBA ou un cambio global na configuración de Windows. Mostraremos como solucionar o problema rapidamente sen cambiar o valor predeterminadoseparador de listas no teu ordenador, polo que ningunha das túas aplicacións se verá afectada.

    Cambiar o delimitador no ficheiro CSV

    Para que Excel poida ler CSV cun separador diferente, podes definir o delimitador directamente nese ficheiro. Para facelo, abra o ficheiro con calquera editor de texto (o Bloc de notas funcionará ben) e engade o seguinte texto na primeira liña. Teña en conta que debe ser unha liña separada antes de calquera outro dato:

    • Para separar con coma: sep=,
    • Para separar con punto e coma: sep=;

    Do mesmo xeito, pode establecer calquera outro separador personalizado; simplemente escríbeo despois do signo de igualdade.

    Con un separador axeitado definido, agora pode abrir o ficheiro do xeito habitual, desde o propio Excel ou desde o Explorador de Windows.

    Especifique un delimitador ao importar ficheiro CSV a Excel

    En lugar de abrir un ficheiro csv en Excel, impórtao mediante o Asistente de importación de texto. (en todas as versións) ou Power Query (en Excel 365 - 2016).

    O Asistente de importación de texto (pestana Datos > De texto ) ofrece algunhas opcións para os delimitadores no paso 2. Xeralmente, escollería:

    • Coma para ficheiros de valores separados por comas
    • Tab para ficheiros de texto
    • Punto e coma para ficheiros de valores separados por punto e coma

    Se non estás seguro de que separador contén os teus datos, proba con diferentes delimitadores e mira cal funciona directamente a vista previa de datos.

    Ao crear unConexión de Power Query, pode escoller o delimitador na xanela de diálogo Vista previa:

    Para obter instrucións detalladas paso a paso, consulte os exemplos ligados arriba.

    Dividir celas usando a función Texto a columnas

    No caso de que os teus datos xa se transfiran a Excel, podes separalos en diferentes columnas usando a función Texto a columnas . Esencialmente, funciona como o Asistente de importación de texto: selecciona un delimitador e Vista previa de datos reflicte os cambios sobre a marcha:

    Para obter máis detalles, por favor consulte Como dividir celas en Excel.

    Como manter os ceros ao principio en Excel CSV

    Síntomas. Algúns valores do ficheiro csv conteñen ceros ao principio. Cando se abre o ficheiro en Excel, pérdense os ceros anteriores.

    Causa . De forma predeterminada, Microsoft Excel converte os ficheiros csv ao formato Xeneral que elimina os ceros principais.

    Solución . En lugar de abrir, importe o teu CSV a Excel e selecciona o formato Texto para as columnas problemáticas.

    Uso do asistente de importación de texto

    Para iniciar o Asistente de importación de texto automaticamente, cambie a extensión do ficheiro de .csv a .txt e, a continuación, abra o ficheiro de texto desde Excel. Ou activa a función Desde o texto (herdado) e comeza a importar CSV a Excel.

    No paso 3 do asistente, selecciona a columna que contén valores con ceros ao principio e cambia o seu formato a Texto . Isto importará os valorescomo cadeas de texto mantendo todos os ceros principais no seu lugar.

    Uso de Power Query

    Se prefire importar un ficheiro csv a Excel conectándose a el, hai dúas formas de manter os ceros principais.

    Método 1: importar todos os datos en formato de texto

    No cadro de diálogo de vista previa, en Detección de tipo de datos , escolla Non detectar tipos de datos . O contido do ficheiro csv cargarase en Excel como texto e conservaranse todos os ceros ao principio.

    Nota. Este método funciona ben se o teu ficheiro só contén datos de texto . Se hai diferentes tipos de valores, use o método 2 para definir un formato apropiado para cada columna individualmente.

    Método 2: establecer o formato para cada columna

    No caso de que o teu ficheiro csv conteña varios tipos de datos, como texto, números, moedas, datas e horas, podes indicar de forma explícita cal debe usarse para cada columna en particular.

    1. Debaixo da vista previa de datos, faga clic en Transformar datos .
    2. No Editor de Power Query, seleccione a columna onde quere conservar os ceros anteriores e faga clic en Tipo de datos > Texto .

  • Define tipos de datos para outras columnas, se é necesario.
  • Cando remate coa edición, na pestana Inicio , no grupo Pechar , fai clic en:
    • Pechar & Cargar : isto cargará os resultados nunha nova folla actualcaderno de traballo.
    • Pechar & Cargar a... - isto permitirache decidir onde cargar os resultados.
  • Consello. Estes métodos tamén poden evitar outras manipulacións cos teus datos que Excel intenta realizar automaticamente. Por exemplo, se os datos importados comezan por "=", Excel tentará calculalos. Ao aplicar o formato Texto , indicas que os valores son cadeas, non fórmulas.

    Como solucionar os problemas de formato de data CSV en Excel

    Síntomas. Despois de converter CSV a Excel, as datas teñen un formato incorrecto, os días e os meses cámbianse, algunhas datas cámbianse a texto, e algúns valores de texto teñen formato automático como datas.

    Causa . No teu ficheiro csv, as datas escríbense nun formato diferente do formato de data predeterminado definido no teu sistema operativo, polo que Excel non interpreta as datas correctamente.

    Solución . Dependendo do problema que teñas, proba unha das seguintes solucións.

    Os días e os meses están mesturados

    Cando os formatos de data na configuración rexional de Windows e o ficheiro csv son diferentes , non hai xeito de que Excel determine que as datas mm/dd/aa que busca están almacenadas no formato dd/mm/aa nese ficheiro en particular. Como resultado, as unidades de día e mes invírtense: Xan-3 pasa a ser Mar-1 , Xan-10 pasa a ser Oct-1 , etc. Ademais, as datas posteriores ao xan-12 sonconverteuse en cadeas de texto porque non existen meses 13, 14, etc.

    Para que as datas se importen correctamente, execute o Asistente de importación de texto e escolle o formato Data apropiado no paso 3 :

    Algúns valores convértense en datas

    Microsoft Excel está deseñado para facilitar a introdución de varios tipos de valores. Polo tanto, se Excel cre que un valor dado representa unha data, formatarase automaticamente como data. Por exemplo, a cadea de texto abr23 parécese moito ao 23 de abril e 11/3 aseméllase ao 3 de novembro , polo que ambos os valores son convertido en datas.

    Para evitar que Excel cambie os valores de texto en datas, use o método xa coñecido: converta CSV en Excel importándoo. No paso 3 do Asistente de importación de texto , seleccione a columna problemática e cambie o seu formato a Texto .

    As datas están formateadas incorrectamente

    Cando se abre un ficheiro csv en Excel, as datas móstranse normalmente no formato predeterminado. Por exemplo, no seu ficheiro orixinal, pode ter 7-May-21 ou 05/07/21 , mentres que en Excel aparece como 5/7/2021 .

    Para mostrar as datas no formato desexado, use a función Formatar celas :

    1. Seleccione a columna de datas.
    2. Preme Ctrl + 1 para abrir a caixa de diálogo Formatar celas .
    3. Na pestana Número , escolla Data en Categoría. .
    4. En Tipo ,escolle o formato desexado.
    5. Fai clic en Aceptar.

    Se ningún dos formatos predefinidos é o adecuado para ti, podes crear o seu propio, como se explica en Como facer un formato de data personalizado en Excel.

    Evita que Excel converta números en notación científica

    Síntomas. Despois de converter CSV en Excel os números están formateados como notación científica, p. 1234578900 aparece como 1.23E+09.

    Causa . En Microsoft Excel, os números están limitados a 15 díxitos de precisión. Se os números do ficheiro csv superan ese límite, Excel convérteos automaticamente a notación científica para cumprir ese límite. Se un número contén máis de 15 díxitos significativos, todos os díxitos "extra" ao final cámbianse a ceros.

    Solución . Importa números longos como texto ou cambia o formato numérico directamente en Excel.

    Importa números longos como texto

    Para transferir con precisión números grandes de CSV a Excel, executa o Asistente de importación de texto e establece o formato da(s) columna(s) de destino en Texto .

    Esta é a única solución real para importar con precisión numéricos cadeas sen perder datos, é dicir, sen substituír os díxitos 16 e seguintes por 0 nin eliminar os ceros iniciais. Funciona moi ben para entradas como ID de produto, números de conta, códigos de barras e similares.

    Non obstante, se os teus valores son números, non cadeas, non é o mellor método xa quenon poderás facer cálculos sobre os valores de texto resultantes.

    Este método tamén che axudará a evitar outro formato automático de datos non desexado ao converter un ficheiro CSV.

    Cambia o formato de número en Excel

    Se os teus datos xa están en Excel, podes cambiar o formato de Xeneral a Texto ou Número como se mostra a continuación:

    Nota. Este método non restaurará os ceros ou díxitos anteriores eliminados despois da posición 15 que foron substituídos por ceros.

    Para obter máis información, consulte Como dar formato ás celas en Excel.

    Ampliar a columna

    Nun caso máis sinxelo, cando un número contén menos de 15 díxitos, é suficiente unha columna un pouco máis ancha para que os números se amosen con normalidade.

    Para obter máis detalles, consulta Como cambiar o tamaño e axustar automaticamente as columnas en Excel.

    Isto é como solucionar os problemas máis comúns que poden ocorrer coas conversións de CSV a Excel. Grazas por ler e ata a próxima semana!

    Michael Brown é un entusiasta da tecnoloxía dedicada á súa paixón por simplificar procesos complexos mediante ferramentas de software. Con máis dunha década de experiencia na industria tecnolóxica, perfeccionou as súas habilidades en Microsoft Excel e Outlook, así como en Follas de cálculo e Documentos de Google. O blog de Michael está dedicado a compartir o seu coñecemento e experiencia con outros, proporcionando consellos e titoriais fáciles de seguir para mellorar a produtividade e a eficiencia. Tanto se es un profesional experimentado como un principiante, o blog de Michael ofrece valiosas ideas e consellos prácticos para sacar o máximo proveito destas ferramentas de software esenciais.