Jump to content

Recommended Posts

Posted

Bom dia

Pretendia transferir valores de células do Excel para campos de uma tabela do Access, para aplicar numa macro (VBA).

Onde poderei ir buscar um exemplo para estudar e tirar conclusoes de modo a poder ultrapassar esta dúvida?

 

Obrigado pela ajuda

Posted (edited)

Primeiro de uma olhada no exemplo de cadastro no excel, creio que seja mais didático, no access também esta bem didático mas já complica um pouco, aproveita para dar uma olhada nos demais exemplos deste fórum, é muito bom.

Exemplo excel

http://www.tomasvasquez.com.br/blog/modelo-de-aplicativo-de-cadastro-em-vba-no-microsoft-excel

Exemplo access

http://www.tomasvasquez.com.br/blog/microsoft-office/especial-modelo-de-cadastro-em-excel-e-vba-com-banco-de-bados-em-access

Procure estudar sobre as tecnologias ADO e DAO

Edited by Poncio Elias
  • Vote 1
Posted

eu tenho uma aplicaçao com um caso identico. ou seja partindo de um ficheiro excel, faz se a importaçao para o access, embora fosse necessario adaptar ao teu caso concreto:

Dim F    As Object
Dim varFile As Variant
 Set F = Application.FileDialog(3)
 F.AllowMultiSelect = False
 F.Show

'Procura o ficheiro a importar atraves de uma janela de dialogo
For Each varFile In F.SelectedItems
         GetFileName = varFile
       Next

Dim wb As Excel.Workbook
Dim xlApp As Excel.Application
Set xlApp = CreateObject("Excel.Application")
xlApp.Visible = True

'apaga as primeiras 6 linhas do ficheiro, podes adaptar ao que precisas, retirando as linhas que nao entrem na base de dados
Set wb = xlApp.Workbooks.Open(GetFileName, True, False)
wb.Sheets(1).rows("1:6").Delete

'guarda o ficheiro excel sem as linhas superiores
wb.Close SaveChanges:=True

' fecha o Excel
xlApp.Quit
Set xlApp = Nothing

' aqui o access liga-se ao ficheiro excel, o que talvez seja suficiente para ti
DoCmd.TransferSpreadsheet acLink, , "XlsTemplate2v", GetFileName, True

finalmente se quiseres transferir os dados da tabela de excel para tabelas do access, fazes uma consulta de adiçao da primeira para a segunda.

tudo isto ira num botao de comando, e sera executado de forma imediata

espero que ajude

Posted

Obrigado amigos....esta a ajudar.

Vou tentar esquematizar o problema.

Dentro do vba(Excel) abrir a base de dados..

Depois transferir o valor de células do Excel ( de varias folhas) para campos específicos de tabelas do access, para servir de guarda de dados os imprimir posteriormente.

A sugestão do Poncio de estudar o ADO esta a ser seguida. A proposta do Carlos é muito util..estou a tentar a solução. Obrigado...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.