MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Importar arquivo XML.

    Compartilhe

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Seg 17 Fev 2014, 19:19

    Prezados, boa tarde,

    Tenho um arquivo xml que tentei importar para tabela ACCESS pelo modo assistente, porém, quando eu importo ele cria diversas tabelas, ou seja, não seria isso que preciso.

    Criei um botão de comando e no evento ao clicar eu gostaria de inserir o código que importa os registros para apenas uma tabela.

    Alguém se habilita a tentar me ajudar com essa demanda ou me dar alguma ideia?

    Segue link do XML.
    [Você precisa estar registrado e conectado para ver este link.]


    Grato,

    Pablo Neruda
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 299
    Registrado : 17/09/2010

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  Pablo Neruda em Seg 17 Fev 2014, 19:53

    Qual a versão do Access você usa?

    Você é do Espírito Santo?


    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.] Elohim Manutenção & Sistemas
    ..............Powered by MS Access with VBA code..............
    ............http://www.elohimsistemas.com.br/...........

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Seg 17 Fev 2014, 19:55

    Pablo Neruda, boa tarde,

    Uso a versão do Access que uso é 2007.

    Sim, sou do Espírito Santo.

    Atenciosamente,

    Pablo Neruda
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 299
    Registrado : 17/09/2010

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  Pablo Neruda em Seg 17 Fev 2014, 20:34

    Ai meu conterrâneo segue exemplo o qual converti de uma rotina em excell:

    [Você precisa estar registrado e conectado para ver este link.]

    Extraia o arquivo em C: na pasta XML, nele já tem o seu arquivo de exemplo... Deve referenciar o objeto "Microsoft XML, Vx.x", no meu caso usei a 6.0... No exemplo esta importando os 4 primeiros campos o restante é com você...

    Sds,


    Pablo


    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.] Elohim Manutenção & Sistemas
    ..............Powered by MS Access with VBA code..............
    ............http://www.elohimsistemas.com.br/...........

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Ter 18 Fev 2014, 00:36

    Pablo, boa noite,

    Sou da Serra...

    Seria isso que estou precisando, vou dar uma estudada no que me enviou. Pois tenho mais de 50 arquivos XML para serem importados.

    Apenas não compreendi o trecho que escreveu (Deve referenciar o objeto "Microsoft XML, Vx.x", no meu caso usei a 6.0... )

    Muito obrigado amigo.

    Pablo Neruda
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 299
    Registrado : 17/09/2010

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  Pablo Neruda em Ter 18 Fev 2014, 11:26

    Bom dia!

    Sou de Vila Velha...

    Se você for copiar a rotina para outro arquivo, na tela do VBA deverá ir em ferramentas > Referencia e marcar essa opção para que o código possa funcionar...

    Se tiver sido resolvido sua questão, marque o tópico como resolvido ok!!!

    A e se tiver serviço free-lancer me chama!!!!

    Sds,


    Pablo


    .................................................................................
    [Você precisa estar registrado e conectado para ver esta imagem.] Elohim Manutenção & Sistemas
    ..............Powered by MS Access with VBA code..............
    ............http://www.elohimsistemas.com.br/...........

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Ter 18 Fev 2014, 14:25

    Ok Pablo,

    Ainda não resolvi, mas assim finalizar eu marco como resolvido.

    Se pintar algum free-lancer concerteza eu lembro de você.

    Atenciosamente,

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Qui 20 Mar 2014, 16:46

    Prezado,

    No exemplo que postou ele importa automático sem perguntar qual arquivo eu pretendo importar ao clicar no botão.

    Porque da minha pergunta, eu tenho uma pasta com mais de 40 arquivos xml e preciso importar um a um e eles possuem titulos diferentes.

    Grato,

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Ter 15 Abr 2014, 11:39

    .

    etrj.fisica
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 16/04/2014

    Sugestão...

    Mensagem  etrj.fisica em Qua 16 Abr 2014, 04:23

    Meu caro...
    Passei o dia tentando fazer isso e agora que consegui gostaria de compartilhar:

    - Crie um botão com nome de botao e insira o seguindo código "ao clicar"

    Private Sub botao_Click()

    For i = 1 To 2

    DoCmd.TransferSpreadsheet acImport, 10, "NOTAS", "C:\Users\Evandro\Desktop\teste\teste.xlsx", True, "tb_" & i & "!A1:B100"

    Next i

    End Sub

    O código acima importa as tabelas do arquivo teste.xlsx que estão nas planilhas tb_1 e tb_2 para o banco de dados e as insere na tabela (já existente no banco de dados Access) NOTAS.

    Obs:
    - O número 10 no comando DoCmd refere-se a versão do excel que está se importando
    - A palavra chave "True" no comando DoCmd quer dizer que as tabelas devem ser importadas com cabeçalho. Mude para "False" se não quiser esta opção
    - O range "A1:B100" compreende um intervalo grande o suficiente para pegar a tabela do Excel inteira. Defina um range adequado para você.

    Espero ter ajudado
    Abraço
    Evandro

    etrj.fisica
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 16/04/2014

    Mais uma ajudinha...

    Mensagem  etrj.fisica em Qua 16 Abr 2014, 04:28

    Se você tiver muitos arquivos em excel e quiser importar todos eles para o Access, você pode fazer o seguinte:

    Pelo ms-dos entre na pasta em que estão os arquivos
    Digite o comando dir > arquivos.txt

    Irá ser gerado um arquivo txt com o nome de todos os arquivos da pasta.
    Copie os nomes cole no excel e trate os dados (texto para colunas) de forma a deixar somente os nomes dos arquivos

    Utilize formula de concatenar e monte o comando DoCmd (que eu expliquei acima) várias vezes com os nomes dos diferentes arquivos.

    Seja Feliz!!

    Abraço
    Evandro

    XPTOS
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 457
    Registrado : 20/01/2014

    Re: [Resolvido]Importar arquivo XML.

    Mensagem  XPTOS em Qua 16 Abr 2014, 11:35

    Prezado etrj.fisica, bom dia,

    Obrigado pela atenção que teve ao me sugerir essas dicas. Atualmente estou usando o código abaixo e funcionou. Minha grande peleja é importação de arquivo no formato XML.

    Grato,

    Dim strTabela As String

    strTabela = "Recebido1"

    If MsgBox("Deseja confirmar importação do (s) registro (s) para tabela ENVIADO?", vbYesNo, "Importando Dados...") = vbYes Then

    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, strTabela, "C:\Users\wagomes\Desktop\Base dados SAC\Unimed Recebido.xlsx", True, "Plan1" & "!A:AQ100000"

    End If

    etrj.fisica
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3
    Registrado : 16/04/2014

    Solução Paleativa

    Mensagem  etrj.fisica em Sab 19 Abr 2014, 16:47

    waguininho,

    Tem um código que fiz para converter planilhas para xlsx. Assim você pode contornar o problema de importação de arquivos xml. Você pode colar esse código em uma planilha que contenha os nomes das bases que você irá converter de xml para xlsx no intervalo A1:A4 (você pode aumentar esse range a depender da quantidade de arquivos que você vai converter).

    Sub trata_bases()

    Dim plan(4, 1) As String ' Definir quantas linhas tem a matriz que irá carregar os arquivos

    For i = 1 To 4   'Passar os arquivos do range da planilha macro para o vetor plan
    plan(i, 1) = Cells(i, 1).Value
    Next i

    endereco = "C:\Users\Evandro\Desktop\teste\"   ' Definir o endereço onde estão os arquivos a serem tratados

    For j = 1 To 4 ' Tratar os arquivos

    arquivo = plan(j, 1) & ".xls"

    Workbooks.Open (endereco & arquivo)
    ActiveWorkbook.SaveAs endereco & plan(j, 1), FileFormat:=xlWorkbookDefault     'Salva no formato xlsx
    ActiveWorkbook.Close False      ' Fecha o arquivo sem salvar

    Next j

    End Sub


    Abraço

      Data/hora atual: Seg 05 Dez 2016, 16:32