Eu fiz de uma outra forma. Usei o método abaixo:
Ele puxa todas as informações da planilha atual e envia para a Tablea Razao do ACCESS.
'#############################################################################################
'## REFERENCIA UTILIZADA ##
'## ##
'## Microsoft Access 14.0 Object Libary ##
'## ##
'#############################################################################################
Dim acc As New Access.Application
acc.OpenCurrentDatabase "C:RSAP_ARzoSAP.mdb", bstrPassword:=PwdDB
acc.DoCmd.TransferSpreadsheet _
TransferType:=acImport, _
SpreadSheetType:=acSpreadsheetTypeExcel12Xml, _
TableName:="Razao", _
Filename:=Application.ActiveWorkbook.FullName, _
HasFieldNames:=True
acc.CloseCurrentDatabase
acc.Quit
Set acc = Nothing
Normalmente a senha e usuário, quando necessários, são passados/informados na string de conexão com o banco de dados.
No achometro, me parece que de um arquivo excel e conectado a outro arquivo, onde é feita a seleção de dados, depois essa seleção devera ser "gravada" em uma tabela access.
Então sua conexão cn; faz a ponte com o arquivo excel; depois voce precisará uma nova conexão com o banco access para poder incluir dados nesse mdb
Essa "ligação" e similar a primeira;algo +/- assim:
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:myFoldermyAccessFile.mdb;
Jet OLEDB:Database Password=MyDbPassword;
Eu tentei desta forma. Mas não funcionou. Acredito que neste caso seria o Password da Planilha que eu estava me conectando. Como disse, este primeiro método funcionou legal em um Banco Access sem senha. Mas quando fui testar um banco com senha, não funcionou.
Pesquisei sobre o SQL e tinha visto que no comando INSERT INTO deve-se colocar a senha do banco que irá ser colocado os dados desta planilha. Mas como ainda não tenho conhecimento muito aprofundado em SQL, não sabia trabalhar com ele direito.
Pietro Farias
Se foi resolvido suas dúvidas, lembre se de marcar o tópico como RESOLVIDO.
ANALISTA X
Postado : 26/05/2016 9:55 am