Ir ao conteúdo
  • Cadastre-se

Macro envio dados de uma celula para outra


Davi Ferreira

Posts recomendados

Fala galera, boa tarde!

 

Bem, meu problema é o seguinte:

Eu tenho a seguinte planilha: http://www.sendspace.com/file/h5xvaz

 

Como vocês podem ver ela tem a aba início (já nos moldes que pretendo usar, porém pode ser alterada);

Tem a aba "prev faturamento", "Faturamento dia"; Para envio (podem desconsiderar essa) e Bd_clientes

 

Qual meu problema? Bem, eu preciso de ajuda para que os dados que serão digitados na aba "início", ao clicar no botão "cadastrar pedido" irem para a aba "Prev faturamento".

Eu Até então usava uma caixa daquelas que é feita no visual basic, porém meu gerente pediu para que eu fizesse assim.

Como Está o procedimento da plan até então:

1-Preencho o código do cliente

2-É feito um procv do cliente e do representante na aba "bd_cliente"

3-Preencho os outros dados (valor, n nf e n pedido)

 

O que eu preciso: Ajuda no Macro para, ao apertar o botão "Cadastrar pedido" esses dados dos 3 passos irem para a aba "Prev faturamento".

 

Eu tenho o seguinte macro base que uso em alguns bds de useform.

 

Private Sub btnEntra_Click()
Application.ScreenUpdating = False
Sheets("Bd_fornec").Select
ActiveSheet.Range("A1048576").Select
ActiveCell.End(xlUp).Select
ActiveCell.Offset(1, 0).Select
ActiveCell = txtCNPJ.Value
ActiveCell.Offset(0, 1).Select
ActiveCell = txtNome.Value
ActiveCell.Offset(0, 1).Select
ActiveCell = txtEndereco.Value
ActiveCell.Offset(0, 1).Select
ActiveCell = txtTelefone.Value
ActiveCell.Offset(0, 1).Select
ActiveCell = txtEmail.Value
ActiveCell.Offset(0, 1).Select
ActiveCell = txtPessoa.Value
Sheets("inicio").Select
Application.ScreenUpdating = True

End Sub

 

Poderia usá-lo? Alterá-lo? Se Sim, como?

 

Desde já agradeço a ajuda de todos

Link para o comentário
Compartilhar em outros sites

Se quiser experimentar este código, instale-o em um módulo comum, assim:

1. copie o código daqui
2. a partir da planilha em que estão os dados tecle 'Alt+F11' para acessar o editor de VBA
3. no menu do editor >> Inserir >> Módulo
4. cole o código na janela em branco que vai se abrir
5. feito! 'Alt+Q' para retornar para a planilha e testar

Em seguida atribua o código ao botão que irá dispará-lo, na planilha "Inicio".

Antes de rodar o código:
1. nas planilhas "Inicio" e "Prev faturamento" os campos estão em sequência diferente; escolha uma sequência e aplique em ambas as planilhas (na "Inicio" em coluna e na outra em linha)
2. na planilha "Inicio" desfaça as mesclagens de células da coluna "E"; se quiser ajuste a largura da coluna.

 

Sub CopiaDados()  Dim LR As Long    With Sheets("Prev faturamento")      LR = .Cells(Rows.Count, 1).End(xlUp).Row        .Cells(LR + 1, 1).Resize(, 6).Value = _        Application.Transpose(Range("E7:E12").Value)    End WithEnd Sub

 

Link para o comentário
Compartilhar em outros sites

 

Se quiser experimentar este código, instale-o em um módulo comum, assim:

1. copie o código daqui

2. a partir da planilha em que estão os dados tecle 'Alt+F11' para acessar o editor de VBA

3. no menu do editor >> Inserir >> Módulo

4. cole o código na janela em branco que vai se abrir

5. feito! 'Alt+Q' para retornar para a planilha e testar

Em seguida atribua o código ao botão que irá dispará-lo, na planilha "Inicio".

Antes de rodar o código:

1. nas planilhas "Inicio" e "Prev faturamento" os campos estão em sequência diferente; escolha uma sequência e aplique em ambas as planilhas (na "Inicio" em coluna e na outra em linha)

2. na planilha "Inicio" desfaça as mesclagens de células da coluna "E"; se quiser ajuste a largura da coluna.

 

Sub CopiaDados()  Dim LR As Long    With Sheets("Prev faturamento")      LR = .Cells(Rows.Count, 1).End(xlUp).Row        .Cells(LR + 1, 1).Resize(, 6).Value = _        Application.Transpose(Range("E7:E12").Value)    End WithEnd Sub

Po cara, muito obrigado, muito mesmo de coração!

 

Antes de fechar o tópico, se puder me tira mais uma dúvida:

É o seguinte: Como você viu ai eu estou enviando os dados para a "Prev Faturamento", porém, Eu preciso do seguinte:

há alguns casos que o pedido é gerado sem nf, ai ele fica na "Prev Faturamento", porém quando é digitada o nº da NF eu envio as notas para o "Faturamento Dia"

Você saberia algum código para fazer o seguinte:

1-Ao digitar o número das notas e apertar um novo botão na aba "Prev Faturamento" Ela transpor as linhas que contém o número da NF para a aba "Faturamento Dia"

 

Se tu puder me ajudar fico muito grato amigo!

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...