Notifications
Clear all

(VBA) Inserir dados na próxima coluna

5 Posts
2 Usuários
0 Reactions
817 Visualizações
(@efnunes)
Posts: 0
New Member
Topic starter
 

Bom dia pessoal,

Sou novo no fórum e também no mundo VBA, estou criando uma planilha onde necessito inserir dados conforme vou gravando no useform criado na próxima coluna em branco.

Exemplo.
Colunas> K L M

1 2 3

Cont. Cliente 2
Cont. Interna 3
Qtde. Maior 4
Qtde. Menor 5

Acima é como serão atualizados os dados no excel. E a tela criada está em anexo. As fórmulas preenchidas fui pesquisando na internet, porém a cada novo gravar os novos dados subscrevem os já inseridos, no caso no lugar de 2,3,4,5. O que preciso é que a cada gravar se a coluna K estiver com dados, os novos sejam inseridos na coluna L,M, e assim por diante. Se não fui claro por favor me falem.

Muito obrigado.

Código até o momento.

Private Sub botao_gravar_Click()

lin = 4
col = 11

If Sheets("contagem ciclica").Cells(4, 11) <> "" Then

col = col + 1

End If

Sheets("contagem ciclica").Cells(4, 11).Value = txt_cliente
Sheets("contagem ciclica").Cells(5, 11).Value = txt_interna
Sheets("contagem ciclica").Cells(6, 11).Value = txt_maior
Sheets("contagem ciclica").Cells(7, 11).Value = txt_menor

'apagar dados da caixa

txt_cliente = ""
txt_interna = ""
txt_maior = ""
txt_menor = ""

End Sub

 
Postado : 12/02/2015 6:59 am
(@efnunes)
Posts: 0
New Member
Topic starter
 

pessoal? alguém poderia ajudar?

 
Postado : 12/02/2015 11:13 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Ainda falta detalhes para adaptar, mas veja se consegue algo com...

Private Sub botao_gravar_Click()
Dim col As Long
lin = 4
col = Worksheets("contagem ciclica").Cells(4, Columns.Count).End(xlToLeft).Column + 1
'If Sheets("contagem ciclica").Cells(4, 11) <> "" Then
'    col = col + 1
'End If
Sheets("contagem ciclica").Cells(4, col).Value = txt_cliente
 Sheets("contagem ciclica").Cells(5, col).Value = txt_interna
  Sheets("contagem ciclica").Cells(6, col).Value = txt_maior
   Sheets("contagem ciclica").Cells(7, col).Value = txt_menor
'apagar dados da caixa
   txt_cliente = ""
  txt_interna = ""
 txt_maior = ""
txt_menor = ""

End Sub
 
Postado : 12/02/2015 12:10 pm
(@efnunes)
Posts: 0
New Member
Topic starter
 

Perfeito!!!

Só colei e já deu certo. Como estou aprendendo seria muito pedir para explicar a fórmula por passos??

em seguida colocarei como resolvido!!

Muito obrigado!!

Boa tarde!!

Ainda falta detalhes para adaptar, mas veja se consegue algo com...

Private Sub botao_gravar_Click()
Dim col As Long
lin = 4
col = Worksheets("contagem ciclica").Cells(4, Columns.Count).End(xlToLeft).Column + 1
'If Sheets("contagem ciclica").Cells(4, 11) <> "" Then
'    col = col + 1
'End If
Sheets("contagem ciclica").Cells(4, col).Value = txt_cliente
 Sheets("contagem ciclica").Cells(5, col).Value = txt_interna
  Sheets("contagem ciclica").Cells(6, col).Value = txt_maior
   Sheets("contagem ciclica").Cells(7, col).Value = txt_menor
'apagar dados da caixa
   txt_cliente = ""
  txt_interna = ""
 txt_maior = ""
txt_menor = ""

End Sub
 
Postado : 12/02/2015 12:22 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Não tem nada além do que já tinha em seu código, apenas acrescentei uma linha.

col = Worksheets("contagem ciclica").Cells(4, Columns.Count).End(xlToLeft).Column + 1

Essa linha verifica a ultima coluna.
Sheets("contagem ciclica").Cells(4, col).Value = txt_cliente '4º linha da ultima coluna
...............
Sheets("contagem ciclica").Cells(7, col).Value = txt_menor '7º linha da ultima coluna
Etc...etc........
Att

 
Postado : 12/02/2015 12:55 pm