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

    Importar Linha Específica

    avatar
    Valdenirst
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 20
    Registrado : 04/05/2015

    Importar Linha Específica Empty Importar Linha Específica

    Mensagem  Valdenirst em 11/4/2019, 14:33

    Bom dia,

    Estou usando este código para importar uma planilha do excel adaptado pelo " Fabio Paes". Segue código abaixo:

    Private Sub btImportar_Click()
    '------------------------------------------------------------------'
    '              Adaptado do site UsandoAccess.com                   '
    '                 Por FabioPaes em 24/01/2017                      '
    '------------------------------------------------------------------'
    Dim strTabela As String
    Dim strSQL As String
    Dim bdExcel As DAO.Database
    Dim rs, rs1 As DAO.Recordset
    'Passa o local e nome do arquivo para a variável
    strArquivo = CurrentProject.Path & "\Exemplo.xlsx"
    'Abre arquivo ListaClientes.xls
    Set bdExcel = OpenDatabase(strArquivo, False, False, "Excel 12.0;HDR=Yes;IMEX=0;")
    'Monta a consulta do Recordset
    strSQL = "SELECT * FROM [Planilha1$]"
    'Abre o Recordset da consulta
    Set rs = bdExcel.OpenRecordset(strSQL)
    'Abre o recordset na tabela que recebera os dados
    Set rs1 = CurrentDb.OpenRecordset("tb1")
    'Adiciona os dados a tabela tb1
    Do While Not rs.EOF
    rs1.AddNew
       'verifico antes sem tem dados na primeira coluna, se tiver eu lanço, se nao eu ignoro!
       If Nz(Len(rs(0)), 0) > 0 Then
       
       rs1!Pos = rs(0) '0 é a primeira coluna do Excel
       rs1!NProduto = rs(1)
       rs1!Descricao = rs(2)
       rs1!Qnt = rs(4)
       rs1!valUnit = rs(13)
       rs1!ValorTotal = rs(14)
    rs1.Update
       End If
    rs.MoveNext
    Loop

    'fecha o Recordset
    rs.Close
    Set rs = Nothing
    rs1.Close
    Set rs1 = Nothing
    'Fecha o arquivo Excel
    bdExcel.Close
    Set bdExcel = Nothing
    MsgBox "A Tabela foi Atualizada...", vbInformation, "Aviso"

    End Sub
    ----------------------------------------------

    Minha pergunta é, Como faço para iniciar a importação a partir da linha 20 por exemplo, não precisando assim editar a planilha do excel para retirar o cabeçalho, pois eu já iniciaria na linha que eu quiser.

    Espero ter sido claro na minha indagação.

    Att,

    valdenir

      Data/hora atual: 19/4/2019, 08:04