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

    erro em macro-ajuda

    Compartilhe

    jrm
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 97
    Registrado : 10/08/2012

    erro em macro-ajuda

    Mensagem  jrm em 15/1/2018, 21:23

    Boa noite

    tenho a seguinte macro que pretendo que copie as folhas de vários excel para as tabelas com o mesmo nome no acess, está a dar erro nesta linha
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, strTable, strPathFile, True, sh.Name & "!"
    não consigo perceber porquê, podem ajudar sff
    Eu testi de varias formas e consegui importar especificando o caminho completo do excel a importar com o respectivo nome, mas quando uso as variáveis não importa.

    Private Sub Comando0_Click()
    Dim strPathFile As String, strFile As String, strPath As String
    Dim strTable As String
    Dim blnHasFieldNames As Boolean
    blnHasFieldNames = True
    strPath = CurrentProject.Path
    strFile = Dir(strPath & "*.xls")
    Do While Len(strFile) > 0
    strPathFile = strPath & strFile
    Set appExcel = CreateObject("Excel.Application")
    Set wb = appExcel.Workbooks.Open(strPathFile)
    For Each sh In wb.Sheets
    strTable = sh.Name
    Debug.Print sh.Name
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, strTable, strPathFile, True, sh.Name & "!"
    Next
    wb.Close
    appExcel.Quit
    strFile = Dir()
    Loop
    End Sub


    avatar
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7032
    Registrado : 05/11/2009

    Re: erro em macro-ajuda

    Mensagem  Alexandre Neves em 18/1/2018, 16:46

    Boa tarde,
    Está a recolher o nome da folha mas depois acrescenta ponto de exclamação, o que deixa de ser nome existente de folha
    sh.Name & "!"


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo

      Data/hora atual: 21/11/2018, 12:32