MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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

    [Resolvido]Importar Excel Especificando Range e Sheet

    Rafael Silva
    Rafael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 590
    Registrado : 15/11/2011

    [Resolvido]Importar Excel Especificando Range e Sheet Empty Importar Excel Especificando Range e Sheet

    Mensagem  Rafael Silva em 16/7/2013, 02:08

    Boa Noite Senhores !

    Achei um exemplo neste site
    http://www.accessmvp.com/kdsnell/EXCEL_Import.htm

    E estou tentando adptar a minha realidade.
    o Codigo funciona perfeitamente como esperado mas preciso fazer alguma alterações do tipo,
    Preciso especificar o Range e o Sheet a ser importado.

    Private Sub Comando2_Click()

    Dim strPathFile As String, strFile As String, strPath As String
    Dim blnHasFieldNames As Boolean
    Dim intWorksheets As Integer
    Dim strWorksheets(1 To 1) As String

    ' Replace 3 with the number of worksheets to be imported
    ' from each EXCEL file (this code assumes that each worksheet
    ' with the same name is being imported into a separate table
    ' for that specific worksheet name)
    Dim strTables(1 To 1) As String

    ' Replace generic worksheet names with the real worksheet names;
    ' add / delete code lines so that there is one code line for
    ' each worksheet that is to be imported from each workbook file
    strWorksheets(1) = "sousa"

    ' Replace generic table names with the real table names
    strTables(1) = "TblTeste"

    ' Change this next line to True if the first row in EXCEL worksheet
    ' has field names
    blnHasFieldNames = True

    ' Replace C:\Documents\ with the real path to the folder that
    ' contains the EXCEL files
    strPath = "C:\dados\"

    ' Replace 3 with the number of worksheets to be imported
    ' from each EXCEL file
    For intWorksheets = 1 To 1

    strFile = Dir(strPath & "teste.xlsx")
    Do While Len(strFile) > 0
    strPathFile = strPath & strFile
    DoCmd.TransferSpreadsheet acImport, _
    acSpreadsheetTypeExcel9, strTables(intWorksheets), _
    strPathFile, blnHasFieldNames, _
    strWorksheets(intWorksheets) & "$"

    strFile = Dir()
    Loop

    Next intWorksheets
    End Sub


    A Parte onde estar de vermelho tentei alterar de acordo com um exemplo do Meste JPaulo !
    http://dl.dropboxusercontent.com/u/771097/ImportarExcelParaAccess.txt

    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, strTabela, "C:\temp.xls", True, bbb.Name & "!A1:AQ500"

    Mas não funfou.

    Alguma Sugestão ?
    Saudacoes !


    .................................................................................
    "Nunca abaixe a cabeça para ninguém,
    nem levante o nariz demais, olho no olho já é o suficiente."
    Rafael Silva
    Rafael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 590
    Registrado : 15/11/2011

    [Resolvido]Importar Excel Especificando Range e Sheet Empty Re: [Resolvido]Importar Excel Especificando Range e Sheet

    Mensagem  Rafael Silva em 16/7/2013, 02:19

    Segue o Exemplo
    https://dl.dropboxusercontent.com/u/19875180/ImportarExcell.zip

    Esta funcionando o código  mas não consigo fazer as adaptações de forma onde posso especificar o Range a ser importado.

    Saudacoes !


    .................................................................................
    "Nunca abaixe a cabeça para ninguém,
    nem levante o nariz demais, olho no olho já é o suficiente."
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10605
    Registrado : 04/11/2009

    [Resolvido]Importar Excel Especificando Range e Sheet Empty Re: [Resolvido]Importar Excel Especificando Range e Sheet

    Mensagem  JPaulo em 16/7/2013, 13:13

    Ola Rafael;

    Se o amigo quer importar um Sheet e Range especifico para uma tabela especifica, utilize o simples;



    Private Sub SeuBotão_Click()
    Dim strTabela As String
    strTabela = "TblTeste"
       DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, strTabela, "C:\teste.xlsx", True, "sousa" & "!A1:AQ500"
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Importar Excel Especificando Range e Sheet Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Importar Excel Especificando Range e Sheet Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Importar Excel Especificando Range e Sheet Folder_announce_new Instruções SQL como utilizar...
    Rafael Silva
    Rafael Silva
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 590
    Registrado : 15/11/2011

    [Resolvido]Importar Excel Especificando Range e Sheet Empty Re: [Resolvido]Importar Excel Especificando Range e Sheet

    Mensagem  Rafael Silva em 16/7/2013, 16:55

    Simple Assim ?? Nen acredito (risos)


    Muito Obrigado funcionou como eu precisava

    Resolvido !


    .................................................................................
    "Nunca abaixe a cabeça para ninguém,
    nem levante o nariz demais, olho no olho já é o suficiente."
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 10605
    Registrado : 04/11/2009

    [Resolvido]Importar Excel Especificando Range e Sheet Empty Re: [Resolvido]Importar Excel Especificando Range e Sheet

    Mensagem  JPaulo em 16/7/2013, 17:26

    Obrigado pelo retorno o forum agradece.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Importar Excel Especificando Range e Sheet Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Importar Excel Especificando Range e Sheet Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Importar Excel Especificando Range e Sheet Folder_announce_new Instruções SQL como utilizar...
    avatar
    RICARDO BARBOSA MACHADO
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 43
    Registrado : 21/07/2014

    [Resolvido]Importar Excel Especificando Range e Sheet Empty Re: [Resolvido]Importar Excel Especificando Range e Sheet

    Mensagem  RICARDO BARBOSA MACHADO em 4/11/2019, 19:40

    Olá @Jpaulo!
    Não consegui fazer o seu código funcionar.
    Estou tentando importar várias planilhas com várias sheet, porém, quero importar somente uma Sheet específica.
    Coloquei o seguinte código adaptado ao seu:

    Private Sub Comando2_Click()
    Dim strTabela As String
    strTabela = "BP"
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, strTabela, "F:\AGF\teste\1 - AGF_NOME_UF_MCU_2015.xls", True, "BP"
    End Sub

    Primeiro que ele só importa a planilha que eu especificar, então ele não aceita colocar "*xls". E segundo que ele não encontra a aba "BP", apesar de ela existir e fazer parte da range.

    Poderia me ajudar?

      Data/hora atual: 4/12/2020, 10:48