Bruno,
Desculpe a demora em responder. Fim de ano é dose (literalmente). Eu já havia feito as duas experiências:
A - Rodar a macro em uma planilha que esteja na mesma pasta de trabalho. Resultado: O problema continua, pois uma, como você disse, interfere na outra;
B - Rodar a macro em uma planilha que esteja em uma pasta de trabalho diferente (arquivo diferente). Nesse caso funciona, já que bastaria "linkar" as células. Essa é a possibilidade mais remota, depois que tiver desistido de encontrar uma solução par ao problema. Mas é uma possibilidade.
O que me parece é que o "Application.OnTime" interfere no "Application.ScreenUpdating", já que após a Macro ser executada, o OnTIme a chama de volta (após 1 segundo). Esse loop fica "eterno" até que o apareça o comando (acionado por um botão que chama a Macro para desligar o OnTime):
Application.OnTime EarliestTime:=Now + TimeValue("00:00:01"), Procedure:="Pressão", Schedule:=False.
Abaixo segue o código da Macro que insiste em continuar piscando a tela. Com o código talvez ajude a decifrar o problema.
Valeu pela ajuda, que é sempre bem vinda.
-------------------------------------
Sub Pressão()
'On Error Resume Next
Application.ScreenUpdating = False
v_linha = 111
v_coluna = 2
Do While Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna).Value <> ""
v_linha = v_linha + 1
Loop
Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 1).Value = Date
Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 2).Value = Time
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna) 'Status
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 1).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 1) 'Data
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 2).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 2) 'Hora
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 3).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 3) 'Compra
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 4).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 4) 'Corr. C.
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 5).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 5) 'Venda
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 6).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 6) 'Corr. V.
Worksheets("Recepção & Base de Dados").Cells(v_linha, v_coluna + 7).Value = Worksheets("Recepção & Base de Dados").Cells(109, v_coluna + 7) 'Último IBOV"
'Application.ScreenUpdating = True
Application.OnTime EarliestTime:=Now + TimeValue("00:00:01"), Procedure:="Pressão"
Application.ScreenUpdating = True
End Sub
-------------------------------------
Postado : 28/12/2011 12:44 pm