Usuário com melhor resposta
pular linha em VBA Excel

Pergunta
-
Bom dia senhores,
Estou com o seguinte problema tenho uma Planilha onde tenho as colunas (c1,c2,c3,c4,c5 e c6), criei uma interface onde preenche os dados usuando-a, porém esta deve preencher as colunas (c1,c3,c4 e C6) na primeira linha, até ai esta ok, criei um botão Salvar, para armazenar mudança e seguir para proxima linha, como um Banco de dados e é ai que estou encontrando problemas, como Salvar dados da primeira linha e seguir para proxima?
este é o codigo atual para preenchimento:
Private Sub txtdat_Change()
Range("c2").Value = txtdat
End Sub
Private Sub txtresp_Change()
Range("d2").Value = txtresp
End Sub
Private Sub txtarea_Change()
Range("e2").Value = txtarea
End Sub
Private Sub txtterceiro_Change()
Range("g2").Value = txtterceiro
End Sub
Private Sub txtcodigo_Change()
Range("h2").Value = txtcodigo
End Sub
Private Sub txtlote_Change()
Range("j2").Value = txtlote
End Subeste é o codigo para salvamento:
Private Sub CommandButton2_Click()
ActiveWorkbook.Save
End SubPodem me auxiliar?
Fabio Ara~p
quinta-feira, 10 de janeiro de 2013 13:55
Respostas
-
Sugiro que você crie um botão de comando (CommandButton) de salvar dados e colocar todo código que preenche as células na planilha juntos:
Private Sub btnSalvar_Click() Dim lRow As Long With Sheets("Plan1") '<- troque o nome da planilha, se necessário 'Obtém última linha e soma 1: lRow = .Cells(.Rows.Count, "C").End(xlUp).Row + 1 'Preenche dados na planilha: .Cells(lRow, "C") = txtdat .Cells(lRow, "D") = txtresp .Cells(lRow, "E") = txtarea .Cells(lRow, "G") = txtterceiro .Cells(lRow, "H") = txtcodigo .Cells(lRow, "J") = txtlote End With End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Sugerido como Resposta Hezequias VasconcelosModerator terça-feira, 15 de janeiro de 2013 15:06
- Marcado como Resposta Hezequias VasconcelosModerator quarta-feira, 16 de janeiro de 2013 14:42
domingo, 13 de janeiro de 2013 10:37Moderador
Todas as Respostas
-
Sugiro que você crie um botão de comando (CommandButton) de salvar dados e colocar todo código que preenche as células na planilha juntos:
Private Sub btnSalvar_Click() Dim lRow As Long With Sheets("Plan1") '<- troque o nome da planilha, se necessário 'Obtém última linha e soma 1: lRow = .Cells(.Rows.Count, "C").End(xlUp).Row + 1 'Preenche dados na planilha: .Cells(lRow, "C") = txtdat .Cells(lRow, "D") = txtresp .Cells(lRow, "E") = txtarea .Cells(lRow, "G") = txtterceiro .Cells(lRow, "H") = txtcodigo .Cells(lRow, "J") = txtlote End With End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
- Sugerido como Resposta Hezequias VasconcelosModerator terça-feira, 15 de janeiro de 2013 15:06
- Marcado como Resposta Hezequias VasconcelosModerator quarta-feira, 16 de janeiro de 2013 14:42
domingo, 13 de janeiro de 2013 10:37Moderador -
agora estou com um problema do seguinte, preciso gerar um numero de registro , como um contador de cliques,
estou usando o seguinte:
Private Sub CommandButton2_Click()
Dim lRow As Long
With Sheets("Processos") '<- troque o nome da planilha, se necessário
'Obtém última linha e soma 1:
lRow = .Cells(.Rows.Count, "C").End(xlUp).Row + 1
'Preenche dados na planilha:
.Cells(lRow, "B") = cmbboximp
.Cells(lRow, "C") = txtdat
.Cells(lRow, "D") = txtresp
.Cells(lRow, "E") = cmbboxdet
.Cells(lRow, "G") = txtterceiro
.Cells(lRow, "H") = txtemb
.Cells(lRow, "I") = txtent
.Cells(lRow, "j") = txtcodigo
.Cells(lRow, "l") = txtlot
.Cells(lRow, "n") = txtop
.Cells(lRow, "o") = txtlin
.Cells(lRow, "p") = txtdesc
.Cells(lRow, "s") = txtquant
.Cells(lRow, "a") = Label11
.Cells(lRow, "aa") = txtnota
.Cells(lRow, "ab") = txtlcont
.Cells(lRow, "k") = ComboBox1
.Cells(lRow, "m") = cmbboxsit
.Cells(lRow, "ac") = cmbboxori
End With
Dim vCon As Long
Label11.Caption = vCon
vCon = Label11.Caption + 1
Label11.Caption = vCon
ThisWorkbook.Save
End Subporem sempre da erro não sei oque esta errado...podem me auxiliar?
segunda-feira, 21 de janeiro de 2013 14:48 -
Em qual linha você obtém o erro e o que seria um contador de cliques?
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
segunda-feira, 21 de janeiro de 2013 19:42Moderador -
Label11.Caption = vConquarta-feira, 23 de janeiro de 2013 13:28
-
Experimente utilizar, simplesmente:
Label11 = Val(Label11) + 1
Não se esqueça que o texto inicial de Label11 deve ser nada ""
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
quinta-feira, 24 de janeiro de 2013 20:21Moderador -
Bom dia!
Obrigado Benzadeus, funcionou porém uma vez que fecho a planilha ele para de contar, começa do zero novamente...
como posso fazer pra q ele "se lembre do ultimo registro?
terça-feira, 29 de janeiro de 2013 12:18 -
Você deverá guardar essa informação em algum lugar. Suponha que seja na célula da planilha chamada Configurações:
Private Sub UserForm_Click() With ThisWorkbook.Sheets("Configurações").Range("A1") .Value = .Value + 1 Label1.Caption = .Value End With End Sub Private Sub UserForm_Initialize() Label1.Caption = ThisWorkbook.Sheets("Configurações").Range("A1") End Sub
Felipe Costa Gualberto - http://www.ambienteoffice.com.br
terça-feira, 29 de janeiro de 2013 20:59Moderador -
Tem como fazer com este mesmo código botão de pesquisar e editar?domingo, 4 de dezembro de 2016 21:40
-
O tópico ao qual você respondeu é antigo e já foi finalizado. Sugiro que crie um novo tópico com sua pergunta, referenciando este link. Com isso, você aumentará as chances de obter uma resposta e ajudará a manter o fórum organizado.
*Este tópico foi bloqueado*
http://www.ambienteoffice.com.br
segunda-feira, 5 de dezembro de 2016 11:34Moderador