No momento, você está visualizando Abrir CSV no Access: 3 métodos diferentes

Abrir CSV no Access: 3 métodos diferentes

O principal formato de exportação de bases de dados em aplicações web, o Comma Separeted Values, ou comumente chamado de arquivo CSV, é basicamente um arquivo de texto onde se usa exclusivamente vírgulas como delimitador de campos. O que facilita na hora de importar de um banco de dados para outro por ter menos configurações a serem feitas. Porém, o Access utiliza as mesmas ferramentas de importação dos arquivos TXT nos arquivos CSV, uma vez que este último pode apresentar variações de formato em alguns provedores de dados; e é aí que os erros de importação se acumulam se não tomarmos cuidado com as características próprias de cada tipo de arquivo. Por isso, sempre que possível, recomendo preferir o formato TXT como base de dados para se evitar os erros comuns de importação. Mas quando precisar abrir CSV no Access utilize o passo a passo a seguir.

Criar uma tabela vinculada no Access

É a minha forma preferida de abrir CSV no Access quando preciso trabalhar com bases atualizadas diariamente, cujo formato original permanece o mesmo: nome de colunas iguais, formato de dados, entre outros.

Figura 1 - Subpasta para arquivos CSV de origem
Figura 1

Recomendo deixar todos os arquivos de origem em uma pasta específica; isso facilita muito a manutenção e a operação diária. Costumo deixar em uma subpasta, chamada de “OD” (origem de dados), onde ficar o banco de dados Access assim como na Figura 1.

Figura 2 - criar novo banco de dados
Figura 2

Crie seu banco de dados se ainda não o fez: na pasta principal, selecione com o botão direito do mouse a opção “Novo”, seguida de “Microsoft Access Database” (Figura 2); renomei-o conforme seu projeto. Aqui utilizarei o nome de “ModeloAccess”; note que evito caracteres especiais tais como espaço, acentos, entre outros; apesar de serem permitidos, prefiro evitar para facilitar meu trabalho em etapas futuras de automação quando forem necessárias.

Figura 3 - habilitar conteúdo
Figura 3

Habilite o conteúdo, caso seja solicitado (Figura 3).

Figura 4 - Nova fonte de dados TXT
Figura 4

Abra seu banco de dados e selecione as opções: Dados Externos \ Nova Fonte de Dados \ Do Arquivo \ Arquivo de Texto, conforme Figura 4.

Figura 5 - Vincular CSV em tabela no Access
Figura 5

Selecione a opção “Vincular à fonte de dados criando uma tabela vinculada” e indique o endereço do arquivo CSV que será utilizado (Figura 5); clique em “OK”.

Figura 6 - Selecionar formato de colunas do arquivo CSV
Figura 6

Na Figura 6, vemos como definir o delimitador de campos, que consiste em identificar qual foi o utilizado por quem criou o arquivo. O método apropriado para arquivo CSV é o “Delimitado”, uma vez que ele utiliza vírgula como separador de campos. A outra opção, de “Largura fixa”, só costuma ser usada em bases de dados onde todos os registros (linhas) de um campo (colunas) têm o mesmo número de caracteres; o que só se aplica em arquivos de texto. Clique em “Avançar”.

Figura 7 - Definir delimitador de campos em arquivo CSV
Figura 7

Bases de dados no formato de arquivo CSV costumam vir com o título das colunas na primeira linha do arquivo. Por isso, como na Figura 7, marque a opção “Primeira linha contém nomes de campo”. Selecione a vírgula como caractere delimitador de campos. Identifique também as aspas duplas como qualificador de texto pois é o utilizado neste tipo de arquivo. Clique em “Avançar”.

Figura 8 - Definir tipo de dados em arquivo CSV
Figura 8

Defina o tipo de dados de cada campo conforme vemos na Figura 8. Você pode também ignorar a leitura de alguns campos, mas recomendo não ignorar nenhum deles pois utilizaremos métodos mais apropriados para isso (e nunca se sabe quando precisaremos de um deles e ter de repetir todo o processo de vinculação). Também sigo como regra pessoal vincular todos os campos no formato “Texto Curto”, para evitar erros comuns de importação, e tratá-los após a vinculação. A menos que eu já tenha algo em mente para o meu projeto. Clique em “Avançar”.

Figura 9 - Definir nome da tabela CSV vinculada
Figura 9

Defina o nome de sua tabela vinculada no Access; utilizarei o nome de “VinModeloCSV”; aqui também evito caracteres especiais pelos mesmos motivos da Figura 2 citados anteriormente; também recomendo sempre utilizar o prefixo “Vin” no início de todas as tabelas vinculadas para facilitar a manutenção e nas etapas de automação, quando forem necessárias; por fim, clique em “Concluir” (Figura 9).

Figura 10 - Abrir nova tabela vinculada
Figura 10

Pronto, agora você já pode utilizar arquivo CSV direto no Access. E quando tiver uma atualização desta base de dados, recebida via e-mail, portal ou outro meio de transmissão, bastará substituir o arquivo CSV anterior pelo novo: o Access estará sempre vinculado ao arquivo CSV com o nome e endereço originais.

Observe, ao abrir a tabela vinculada no Access (Figura 10), que utilizei como exemplo arquivo CSV de 56 MB e com 100.000 linhas que extraí a partir de dados totalmente fictícios do site Fake Name Generator. Qualquer semelhança com a realidade é mera coincidência.

Importar dados para uma nova tabela no Access

Utilizo pouco este método para abrir CSV no Access por ter, para mim, aplicação muito específica: criar uma tabela armazenada no próprio Access a partir de um arquivo CSV.

Siga os passos de 1 a 4 do método anterior (Figuras 1 a 4).

Figura 11 - Importar tabela CSV no Access
Figura 11

Conforme a Figura 11, selecione a opção “Importar os dados de origem para uma nova tabela do banco de dados atual”; indique a planilha de origem e clique em “OK”.

Siga os passos de 6 a 8 do método anterior (Figuras 6 a 8).

Figura 12 - Sem chave primária em tabela CSV no Access
Figura 12

Defina se algum campo será a chave primária (Figura 12); ou seja, qual campo será o índice principal de sua tabela. Neste ponto, eu prefiro sempre escolher “Sem Chave Primária” e defini-la posteriormente após tratar os erros de importação que possam surgir.

Figura 13 - Definir nome da tabela CSV importada
Figura 13

Defina o nome de sua tabela importada do arquivo CSV; utilizarei o nome de “CadModeloCSV”; aqui também evito caracteres especiais como explicado anteriormente; também recomendo sempre utilizar o prefixo “Cad” no início de todas as tabelas importadas para facilitar a manutenção e nas etapas de automação, quando forem necessárias; a seguir, clique em “Concluir” (Figura 13).

Figura 14 - Salvar etapas de importação CSV
Figura 14

Por fim, há a opção de salvar as etapas de importação (Figura 14) para se evitar retrabalho caso prefira atualizar sua tabela importada repetindo o processo de importação, onde o Access substituirá a tabela anterior pela nova. Caso opte por esse método, sugiro substituir o prefixo “Cad” pelo “Imp” também como padrão para favorecer manutenções e automações futuras; clique em “Salvar Importação”, ou desmarque esta opção, e finalize a tarefa.

Acrescentar registros a uma tabela no Access

Não utilizo este método para abrir CSV no Access pois prefiro tratar os erros comuns de incompatibilidade de dados por outros meios. Mas é bom conhecê-lo para qualquer aplicação particular que venha a surgir no dia a dia.

Siga os passos de 1 a 4 do primeiro método (Figuras 1 a 4).

Figura 15 - Acrescentar CSV em tabela Access
Figura 15

Conforme a Figura 15, selecione a opção “Acrescentar uma cópia dos registros à tabela”; indique o arquivo de origem, a tabela de destino e clique em “OK”.

Siga os passos de 6 e 7 do primeiro método (Figuras 6 e 7).

O Access reconhece o título das colunas de seu arquivo CSV que correspondem aos campos de sua tabela Access; somente os dados compatíveis serão acrescentados; clique em “Avançar”.

Figura 16 - Definir tabela para acrescentar CSV
Figura 16

Verifique se está acrescentando os registros na tabela correta e clique em “Concluir”, conforme Figura 16.

Finalizando, temos a mesma oportunidade de salvar as etapas desta importação para serem utilizadas novamente assim como explicado no método anterior (Figura 14); clique em “Salvar Importação”, ou desmarque esta opção, e finalize a tarefa.

Prós e Contras

Quem trabalha com o arquivo CSV e o Access sabe que não há um método “correto” e outro “errado” de abrir CSV no Access, apenas maneiras diferentes de se chegar no mesmo resultado. Eu prefiro o método de vincular tabelas por preferir tratar erros de importação a partir de Consultas Ação, onde posso criar tabelas, acrescentar, editar ou até mesmo excluir registros nestas tabelas.

Padronizei meu trabalho desta forma e vou mostrar detalhadamente como faço. Os métodos de Importação e Acréscimo são mais rápidos, porém, menos maleáveis quando surgem erros de importação. Tudo vai depender do tamanho de seu arquivo CSV e de como os dados estão armazenados nele.

Autor