Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Dúvidas sobre cálculos, funções simples e aninhadas, fórmulas matriciais, etc.
#53923
Olá, gostaria de saber se consigo com algum recurso do excel salvar os resultados de uma fórmula numa coluna, e quando mudar a entrada salvar a outra resposta em outra coluna. Exemplo: para cada dia do mês que eu usar numa mesma fórmula, salvar o resultado na coluna do respectivo dia.
Você não está autorizado a ver ou baixar esse anexo.
#53928
Se você quiser experimentar, segue uma solução via macro.

Instale uma cópia do código abaixo no módulo da planilha, assim:
1. copie o código daqui
2. clique com o direito na guia da planilha de interesse e escolha 'Exibir Código'
3. cole o código na janela em branco que vai se abrir
4. feito! 'Alt+Q' para retornar para a planilha e testar
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Address <> "$L$9" Then Exit Sub
 Cells(2, [A1:AF1].Find([L7]).Column + 1) = [L10]
End Sub
funcionamento - após alterar manualmente o conteúdo de L9 o código irá lançar o valor de L10 na linha 2, na célula correspondente ao dia imediato de L7 na linha 1.

dica - se você colocar em em C1 =B1+1 e arrastar para a direita, quando for mudar o mês bastará mudar em B1 e assim não precisará refazer as datas até AF1. ;)
#53939
Cara, funcionou mt bem!! Obrigado. Tentei usar o princípio para o problema real que eu tenho, q é um controle com mais itens, mas não consegui reproduzir.. imagino que tenha q colocar um for pq é pro resultado ir pra várias linhas. Segue o código que eu tentei fazer e a planilha. Agradeço se puder ajudar novamente!
Código: Selecionar todos
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Address <> "$E$5:$E$17" Then Exit Sub
 Cells(26, [C25:AG25].Find([C4]).Column + 1) = [D5:D17]
End Sub
No caso, o resultado das céluas D5:D17 devem ser salvos na coluna do respectivo dia (C25:AG25).
Você não está autorizado a ver ou baixar esse anexo.
#53944
Para essa situação totalmente diferente da anterior me parece mais adequado colocar um novo código em um módulo comum e executá-lo via botão após o preenchimento manual do intervalo E5:E17.

Instale uma cópia do código abaixo 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

para rodar o código:
6. tecle 'Alt+F8' / selecione a macro correspondente / Executar, ou insira um botão na planilha e vincule-o à macro ou vincule-a a um atalho de teclado (Alt+F8 / Opções).
Essas três opções para rodar o código podem ser implantadas isoladamente ou em conjunto.
Código: Selecionar todos
Sub ReplicaDados()
 Cells(26, [C25:AH25].Find([D4], LookIn:=xlValues).Column).Resize(13) = [D5:D17].Value
End Sub
dicas
1. Álcool líquido 70% | Álcool em gel 70% | Atadura 10x4,5 cm 13 fios | Atadura 20x4,5 cm 13 fios
2. coloque o valor da saída sem o sinal de menos (saída já significa uma subtração) e altere a fórmula em D5 de =C5+E5 para =C5-E5
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord