Notifications
Clear all

Copiar e Colar em Linha Específica

5 Posts
3 Usuários
0 Reactions
1,012 Visualizações
(@otaviog)
Posts: 2
New Member
Topic starter
 

Pessoal, boa tarde!

Estou fazendo uma planilha para uma empresa e preciso de uma solução para o seguinte:

Tenho três etapas para inclusão de um evento: Inclusão, Consulta e Edição
Na etapa de inclusão faço o cadastro do evento.
Depois disso faço uma macro para copiar o evento para outra aba (BASE) onde estarão todos os eventos em linha, ou seja, estou transferindo várias informações de colunas para linhas.
Na etapa de Consulta é uma questão de PROCV tranquila.
PORÉM, MINHA DIFICULDADE ESTA NA QUESTÃO DE EDIÇÃO.

Suponhamos que eu tenho um evento com o código X, que foi cadastrado e copiado para uma outra aba (BASE), em linha.
Quando eu for editar, como eu faço para transferir as informações do evento para a mesma linha que eu as tirei?
Por exemplo:
Evento 1
Valor Unitário - Valor Total - Produto 1 - Produto 2
Todas informações em colunas

Para editar, insiro o código do evento em uma célula DA PLANILHA EDIÇÃO, faço uma referência À planilha BASE, faço uma macro para copiar somente valores, EDITO O QUE PRECISAR.

Mas e agora? como faço para copiar novamente essas informações editadas para a aba BASE, na mesma linha que elas estavam antes? Para que não fiquem duplicadas..
Como a linha vai conter o código do evento, penso que isso ajude na hora do VBA procurar a linha para colar as informações.

Espero que entendam.
Abraço.

 
Postado : 10/01/2016 12:07 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Nao é dificil se tivesse postado a planilha.

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 10/01/2016 12:24 pm
(@otaviog)
Posts: 2
New Member
Topic starter
 

Ainda não fiz a parte VBA do projeto, estou estruturando. Você consegue fazer um exemplo por gentileza?

 
Postado : 10/01/2016 12:27 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Tenta assim partindo do principio que vc saiba como carregar os dados para alterar

O codigo abaixo grava na mesma linha de onde o registro se encontra.

Sub Alterar()

Dim busca As String

Sheets("Cadastro").Range("B3:B4").Select
Selection.Copy

busca = Sheets("Cadastro").Range("B3").Value

Sheets("Base").Select

Sheets("Base").Range("A4").Select

Do While ActiveCell <> ""

If ActiveCell = busca Then

Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True
Range("A4").Select
Sheets("cadastro").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("B3").Select
Else
ActiveCell.Offset(1, 0).Select

End If

Loop
End Sub

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 10/01/2016 12:48 pm
(@4ntunes)
Posts: 26
Eminent Member
 

pequeno exemplo :
' bloco para copiar e colar --------------
' Range("B4").Select
' Selection.Copy
' Workbooks.Open ("O:DADOScontas.xlsx")
' Windows("contas.xlsx").Activate
' Sheets("plan1").Select
' Range("A1").Select
' ActiveSheet.Paste
' Windows("contas2.xlsm").Activate
' fim do bloco----------------------------

 
Postado : 11/01/2016 5:44 am