Notifications
Clear all

Substituir Fórmula =($D$1-Q5) &"" por VBA

20 Posts
4 Usuários
5 Reactions
1,993 Visualizações
(@jcgmcs)
Posts: 69
Estimable Member
Topic starter
 

Olá boa tde..

Ajuda.. no Excel 2007

Na celula "D1" que é fixa, insiro uma Data Inicial qualquer e na coluna "Q" apartir da Linha 5, insiro a Data Final me retornando a contagem dos dias decorrentes em "P".

OBs: Na coluna "P" apartir da linha 5 tenho essa fórmula =($D$1-Q5) &"" que vae até à "P3000" 

Preciso que linhas da coluna "P" sejem preenchidas e atualizadas por VBA sempre que "D1" for alterado.

 

Obg.

Att, Carlos

 
Postado : 23/07/2020 2:48 pm
(@jcgmcs)
Posts: 69
Estimable Member
Topic starter
 

Bom dia Wagner...

Pois é..! tbém nao entendo o pq disso... Mas um detalhe, a variação se dá qdo selecionado a data, percorrendo coluna abaixo...

Eae sim que, é na barra de formulas que aparecem algumas celulas em dd/mm/aa e outras em dd/mm/aaaa tdeu..

Mas vou tentar mudar de coluna pra ver se resolve isso blz..

Wagner Uma outra coisa, nesse código:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long

Application.EnableEvents = False

If Target.Count > 1 Then
Application.EnableEvents = True
Exit Sub
End If

If Target.Address(False, False) = "D1" Then
For i = 5 To 3000
Range("P" & i).Value = CDate(Range("D1").Value) - CDate(Range("Q" & i).Value)
Next i
ElseIf Target.Column = 17 And Target.Row > 4 Then
Range("P" & Target.Row).Value = CDate(Range("D1").Value) - CDate(Range("Q" & Target.Row).Value)
End If

Application.EnableEvents = True
End Sub

Ocorre que qdo mudo o dia na "D1" pra uma outra data qualquer, o processo de atualização na coluna "P" que atualmente tenho mais de 2.000 linhas, está muito demorado, em torno de 4min +/- pra

atualizar a recontagem...

Será que teria uma maneira de deixar esse processo de forma instantânea assim como ocorre com a formula..?? que mudou a data, de imediato já é feito as alterações em toda a coluna...

Obg..

 
Postado : 28/07/2020 8:48 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

@jcgmcs,

 

Acredito que isso depende do tipo de processador, do sistema operacional, dos arquivos temporários existentes, do lixo virtual existente, do tamanho do arquivo, da velocidade do processador, da quantidade de memória RAM, da quantidade de espaço disponível em disco, enfim... de uma série de coisas que podem influenciar no desempenho e na performance do seu micro. Aí... não sei como ajudar.

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

 
Postado : 28/07/2020 6:16 pm
jcgmcs reacted
(@jcgmcs)
Posts: 69
Estimable Member
Topic starter
 

Wagner boa noite..

Amigo muito obg à sua ajuda até onde pôde mas creio que problema é no próprio código msm, até pq minha máquina faço trabalhos de modelagem 3D..

Mas vou tentar resolver isso e posto aki Blz..

Abraçoo..

 
Postado : 28/07/2020 7:21 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 
Postado por: @jcgmcs

...na barra de formulas que aparecem algumas celulas em dd/mm/aa e outras em dd/mm/aaaa.

Muito provavelmente sua coluna tinha células formatadas como texto antes de ser preenchida. Se for isso, é bem possível que a data também esteja aparecendo invertida na célula (m/d/aaaa). Faça um teste numa coluna vazia do lado com a fórmula =ÉTEXTO(Q5) e arraste. Procure por VERDADEIRO, se houver. Limpe os formatos e reformate a coluna para dd/mm/aa.

 
Postado : 28/07/2020 9:34 pm
jcgmcs reacted
(@jcgmcs)
Posts: 69
Estimable Member
Topic starter
 

Bom dia Edson...

Fiz o teste e realmente várias e várias celulas estavam como VERDADEIRO msm.. e nem sei pq aconteceu isso.. Rss

Obg..

 
Postado : 29/07/2020 10:16 am
Página 2 / 2