Uso formulário no excel e as combobox usava os dados que estavam em uma planilha.
Coloquei os dados da planilha em uma tabela do acess. Não tem chave primaria ou numeração para cada linha.
Como tenho que ficar alterando e incluindo dados criei um formulário para alterar/incluir dados. O alterar já consegui o @raygsson me ajudou no outro post.
Agora preciso o botao de INCLUIR um novo dado. Já tentei algumas opcões que até deu mas em vez de ir para uma linha abaixo do ultimo item já existente está criando uma nova linha.
Meio confunso, vou postar uma foto. Caso não conseguirem me ajudar subo o arquivo.
Exemplo: Quero incluir um novo banco, "BB", no "Campo BANCO". Em vez de ir para baixo do Caixa, cria uma nova linha por ultimo na tabela.
Esse script abaixo eu uso em outros formularios para incluir quando se tem chave primaria. Mas não da porque ele usa o codigo da chave primaria.
Call conecta_financas
Set rs = New ADODB.Recordset
rs.Open "select * from base_despesas", MiConexao, adopenkeyser, adLockOptimistic, adCmdText
While Not rs.EOF
id = rs(0)
rs.MoveNext
Wend
Me.c_despesasdb_num = id + 1
id = Me.c_despesasdb_num
With rs
.AddNew
.Fields("Cod_despesas") = id
.Fields("Mes") = Me.c_despesasdb_mes
End With
Call desconecta_financas
>>>>> Tentei esse, mas cria uma nova linha.
campo_bd = "Despesa_Fixa_Desp"
Call conecta_financas
Set rs = New ADODB.Recordset
rs.Open "select " & campo_bd & " from Dados_Source", MiConexao, 3, 3
Do Until rs.EOF
With rs
'AddNew
.Fields(campo_bd) = c_despesasdb_item_alterar
.Update
End With
rs.MoveNext
Loop
Call desconecta_financas
Editado pela Moderação. Motivo: Novamente pedimos que utilize o botão Código (< >) sempre que for inserir código VBA ou Fórmulas.
Daniel Rodrigo
@anderson obrigado pelo retorno.
Não procurei ainda, mas pensei agora. Na planilha no excel consigo achar a ultima linha preenchida e o retorno do numero da Linha. Teria algum comando que conseguiria achar a ultima linha preenchida do campo no Acess via vba.
Exemplo: No campo Banco o ultimo é Caixa - linha 2.
Poderia criar um campo com números automaticos. Assim alteraria a linha 3 do campo Banco.
Se vai da certo não sei.
É que tenho 4 arquivos com diversos formularios, e deixei padrão de todos os dados nessa tabela. Ao todos tenho 53 campos por isso queria algo em uma unica tabela. Mas entendi a logica que passou que tem que ter relacao entre os campos.
Daniel Rodrigo
Crie uma tabela chamada tbBancos no mesmo arquivo do Access que anexou e coloque nela o campo Bancos.
Deixe a tbBancos somente com o campo Bancos.
Quando for incluir um banco, inclua na tbBancos.
Em 90% dos casos em que não se anexa o arquivo, ocorrem mal-entendidos, gerando perda de tempo de ambos os lados.