Notifications
Clear all

executar macro

5 Posts
4 Usuários
0 Reactions
1,163 Visualizações
(@leandropr)
Posts: 9
Active Member
Topic starter
 

eu tenho essa macro que criei gravando as ações

Sub Macro1()
Range("J4:M6").Select
Selection.ClearContents
Range("F3").Select
ActiveCell.FormulaR1C1 = "2"
End Sub

ao executar ele mostra na tela selecionando as células deletando, depois selecionando a célula F3 colocando a informação 2.

é possível inserir comandos onde o Excel execute o as ações sem aparecer na tela, como se fosse em segundo plano

grato

 
Postado : 22/01/2014 10:30 pm
(@gtsalikis)
Posts: 2373
Noble Member
 

use o Application.ScreenUpdating, segue um exemplo

Sub Macro1()
Application.ScreenUpdating = False
Range("J4:M6").Select
Selection.ClearContents
Range("F3").Select
ActiveCell.FormulaR1C1 = "2"
Application.ScreenUpdating = True
End Sub

ou, tratando o código

Sub Macro1()
Application.ScreenUpdating = False
Range("J4:M6").ClearContents
Range("F3").Value = 2
Application.ScreenUpdating = True
End Sub

 
Postado : 23/01/2014 5:36 am
(@depoisteconto)
Posts: 183
Reputable Member
 

eu tenho essa macro que criei gravando as ações

Sub Macro1()
Range("J4:M6").Select
Selection.ClearContents
Range("F3").Select
ActiveCell.FormulaR1C1 = "2"
End Sub

ao executar ele mostra na tela selecionando as células deletando, depois selecionando a célula F3 colocando a informação 2.

é possível inserir comandos onde o Excel execute o as ações sem aparecer na tela, como se fosse em segundo plano

grato

Sim. Esse é o primeiro passo, gravar ações. O segundo passo é programá-las.

Execute esse código com esse complemento e já terá um ganho em velocidade.

Sub Macro1()
Application.ScreenUpdating = False 
    Range("J4:M6").Select
    Selection.ClearContents
    Range("F3").Select
    ActiveCell.FormulaR1C1 = "2"
Application.ScreenUpdating = True
End Sub

At

 
Postado : 23/01/2014 5:39 am
(@leandropr)
Posts: 9
Active Member
Topic starter
 

use o Application.ScreenUpdating, segue um exemplo

Sub Macro1()
Application.ScreenUpdating = False
Range("J4:M6").Select
Selection.ClearContents
Range("F3").Select
ActiveCell.FormulaR1C1 = "2"
Application.ScreenUpdating = True
End Sub

ou, tratando o código

Sub Macro1()
Application.ScreenUpdating = False
Range("J4:M6").ClearContents
Range("F3").Value = 2
Application.ScreenUpdating = True
End Sub

muito obrigado pela ajuda

 
Postado : 23/01/2014 8:42 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Caso seja necessário reabrir o tópico, o autor poderá enviar uma MP para um dos moderadores solicitando o desbloqueio.

 
Postado : 23/01/2014 3:58 pm