Planilha excel demorando muito para gerar PDF
27/08/2019
0
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allisson Oliveira
Post mais votado
30/08/2019
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
Adolfo Lima
Mais Posts
30/08/2019
Allisson Oliveira
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
Também espero. Vou testar. Valeu mesmo.
30/08/2019
Allisson Oliveira
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
Eu não entendi muito bem o que você quis dizer aqui nessa frase (o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido)
Você esta se referendo a aba (Entrada Tarefas?) e falando nessa aba, eu notei que tem um excesso de registros alem da conta a partir da célula 3145, isso pode acarretar lentidão na hora de gerar o documento?
30/08/2019
Allisson Oliveira
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
Eu não entendi muito bem o que você quis dizer aqui nessa frase (o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido)
Você esta se referendo a aba (Entrada Tarefas?) e falando nessa aba, eu notei que tem um excesso de registros alem da conta a partir da célula 3145, isso pode acarretar lentidão na hora de gerar o documento?
30/08/2019
Adolfo Lima
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
Eu não entendi muito bem o que você quis dizer aqui nessa frase (o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido)
Você esta se referendo a aba (Entrada Tarefas?) e falando nessa aba, eu notei que tem um excesso de registros alem da conta a partir da célula 3145, isso pode acarretar lentidão na hora de gerar o documento?
Sim , pois como a planilha têm que efetuar um cálculo para pegar a data , neste caso separe a data já na tabela de origem "Entrada - Tarefas", isto deve ajudar.
02/09/2019
Allisson Oliveira
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
Adolfo
o comando que você colocou não funcionou, tem alguma outra forma? Fazer o código novamente do zero pode resolver?
02/09/2019
Allisson Oliveira
As planilha saõ em codigo VBA.
Att
links das planilhas.
https://drive.google.com/file/d/12y9byIg_zmENsVBsQpQILkQ8uOCxQaH0/view?usp=sharing
Allison
Se observar no código Vba do módulo 1 , você possui a seguinte expressão para pegar somente a data : Application.RoundDown(Sheets("Entrada - Tarefas").Cells(Z, 3), 0) , ou seja você tenta retirar o valor de hora para ficar apenas com a data , este procedimento que gera um cálculo interno , leva dois segundos para processar , se pegar o total de registros e multiplicar por dois você terá uma noção do tempo , abaixo coloquei um pequeno exemplo de alteração que já faz o tempo cair para 1 segundo , o ideal é que você separe a data já na tabela de origem , isto deixará mais rápido
E também não sei com separar a data da tabela de origem como você sugeriu.
Sheets("RD - Diferenciados").Cells(j, 1) = Left(CStr(Sheets("Entrada - Tarefas").Cells(Z, 3)), 10)
Espero que isto te ajude , abraços.
E também não sei como separar a data da tabela de origem como você sugeriu.
Clique aqui para fazer login e interagir na Comunidade :)