Olá, acredito que a solução para minha necessidade seja apenas através de macro, como não conheço programação VBA, gostaria de saber se alguém poderia me ajudar. talvez depois de ter o código, posso tentar adaptar.
a ideia é, para cada valor que eu colocar em A1, B1, C1, por exemplo, ir colocando os valores a partir da coluna E1, como se fosse um histórico do que foi digitado. se depois eu digitar outros valores em A1, B1 e C1, então os valores de E1-F1-G1 serao colocados em H1-I1-J1 e assim por diante.....
tem um exemplo de planilha, caso fique difícil de entender o que eu quero expressar..... http://www.4shared.com/file/dAjGLe-aba/tst-shift.html
agradeço a ajuda desde já.
Grato.
johnsmith,
Boa Noite!
Segue seu arquivo após a inserção de códigos de VBA que faz o que você está querendo: Criar um histórico linear do que for digitado na faixa de células A2:C3.
Creio que é assim que você estava pretendendo.
A execução da macro está automática a partir do momento que você digitar a última célula da faixa. Ou seja, sempre que você digitar na célula C3 e teclar ENTER, a macro copia os dados, inicialmente para a faixa E2:G3 e, daí em diante, para as colunas seguintes.
É importante esclarecer que a palavra "hist-1" que é colocada acima de cada conjunto de dados, bem como as seguintes (hist-2, hist-3... hist-n) precisam de um registro na própria planilha para que o mesmo seja lido e colocado o próximo número. Esse número está registrado na célula XFD1048576. Ou seja: na última célula da planilha. Essa coluna (XFD) eu deixei oculta, pois se precisar imprimir a planilha, não ter que imprimir até a última coluna. Se precisar alterar o número dos históricos, basta reexibir a coluna, ir até a célula XFD1048576 e modificar o número que lá está.
Espero ter ajudado e que seja dessa forma.
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
Caro Wagner,
É isso mesmo, valeu!!! Obrigado.
Agora, só mais uma dica para eu tentar dar uma adaptada, baseado na ideia. Se eu tiver vários códigos, datas e status para colocar, como posso fazer? Supondo que preciso adicionar código, data e status nas linhas abaixo.
Obrigado novamente.....
johnsmith,
Bom Dia!
Peço que vote positivamente no tópico, clicando na mãozinha ao lado da ferramenta Citar no canto superior direito da tela.
Quando à sua segunda demanda, você precisa colocar mais código semelhante ao que já existe no evento Worksheet_Change da Plan1, antes das linhas abaixo:
[code] End If Application.EnableEvents = True [/code]
Ou seja, para cada nova linha onde vá existir um novo conjunto de dados, você deve testar para saber qual é a célula atualmente clicada (Target.Value). Veja que o primeiro IF do código que aí está testa se a célula que foi atualizada foi a C3 (If Target.Address = "$C$3" Then). Assim, você precisará inserir outros testes referentes a outras linhas.
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
olá Wagner,
obrigado pelas informações, mas imagine que eu tenha várias linhas - 100,200,300....a quantidade de IFs e códigos ficariam inviáveis. Pensei que poderia colocar algo do tipo:
enquanto $Cn <> "" faça a regra
como não conheço VBA, minha adaptação seria apenas nas quantidades de células envolvidas e o titulo de cada uma delas.
teria como ajudar nisso? deixando o código mais aberto para uma quantidade livre?
grato novamente.
Ok. Segue nova versão adaptada para várias linhas.
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
ola Wagner,
é isso mesmo, valeu....agora, não sei se reparou, quando vc tem 2 ou mais valores em celular na coluna de A até C, e vc altera uma delas, a A - 1 esta sendo copiada junto.
exemplo:
A1: aaa B1: 01/01/2014 C1: st1
A2: bbb B2: 02/01/2014 C2: st2
A3: ccc B3: 03/01/2014 C3: st3
se você alterar a linha A3, as informações de A2 estão sendo copiadas também.
vc programou dessa forma, ou tem como ajustar isso?
Grato.
Ok.
Segue correção.
É que o entendimento por escrito é complexo. Tem que ser assim mesmo para irmos afinando o entendimento.
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
olá Wagner,
sera que vc anexou a planilha correta corrigida? parece que continua com o mesmo comportamento, isto é, uma vez alterada uma determinada célula, a célula de cima continua sendo copiada....
grato.
É... acho que era a planilha errada.
Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)
Atenciosamente
Wagner Morel
Agora, sim, obrigado.....