Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Executar Macro em segundo Plano

Dúvidas gerais sobre Excel
eder_benitez
Acabou de chegar
Acabou de chegar
Mensagens: 7
Registrado em: Dom Jan 24, 2010 2:09 pm

Executar Macro em segundo Plano

Mensagem por eder_benitez »

Boa tarde...tenho a seguinte macro que atualiza um ranking:
Sub Atualiza()
'
' Atualiza Macro
'

'
Application.ScreenUpdating = False
Sheets("Plan1").Select
Range("B5:M21").Select
Selection.Copy
Sheets("Plan3").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("B2:M26").Select
Application.CutCopyMode = False
ActiveWorkbook.Worksheets("Plan3").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Plan3").Sort.SortFields.Add Key:=Range("E2:E26"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Plan3").Sort.SortFields.Add Key:=Range("H2:H26"), _
SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Plan3").Sort
.SetRange Range("B2:M26")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("B2").Select
Call Application.OnTime(Now + TimeValue("00:00:20"), "Atualiza")
Application.ScreenUpdating = True

End Sub

_____
Utililizei a aplicação ScrenUpdating...porém...se estou em outra planilha, ou outro arquivo excl que nao tem nada a ver com o ranking...essa macro do ranking acaba executando nesto outro arquivo que estou trabalhando....
Aguem tem alguma ideia??


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Executar Macro em segundo Plano

Mensagem por webmaster »

Eder,

Infelizmente, como a própria chamada diz, o ScreenUpdating se refere ao objeto Application. Com isso, ao setar o esta propriedade, ela se refere a todo o aplicativo e arquivos abertos sobre este. Talvez, abrindo o seu arquivo uma nova instância do Excel, a macro não surta o mesmo efeito. Tente fazê-lo, abrindo seu outro arquivo (o que não tem a macro) executando o seguinte prodecimento:

http://www.tomasvasquez.com.br/blog/mic ... a-do-excel

Abraços


Responder