MaximoAccess

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

Obrigado

Administração do MaximoAccess

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 : 10591
    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 : 10591
    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 : 33
    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?

    Conteúdo patrocinado

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

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 15/11/2019, 03:49