Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
Por enunes
Posts
#52670
Como aponto para a macro rodar em determinada planilha? Quero que uma rotina rode em uma planilha enquanto trabalho rm outra...

Fiz uma de atualização mas se minimizo da erro
Por osvaldomp
#52673
Código: Selecionar todos
With Sheets("Plan1")
  .blá
  .blá
  ...
  ...
End With
Por osvaldomp
#52675
Disponibilize o código.
Por enunes
Posts
#52677
Desde já obrigado pelo tempo em me ajudar.

Este o código, que na verdade quero que fique alternando entre as abas como se fosse uma apresentação. Estou com dois monitores, e essa que quero que rode é para ficar em um, no outro deveria trabalhar com outras planilhas normalmente. Porém se estou na outra a seleção de célula volta para esta que está como apresentação. Também preciso disso pois terei outra base que ficará minimizada que precisaria ser atualizada a cada tempo.
Código: Selecionar todos
Public altern As Date, i As Long

Sub AlternaPlans()

Application.ScreenUpdating = False
With ThisWorkbook.Sheets("Emb.Modalidade")
If i = 0 Then
i = 1
End If
altern = Now + TimeValue("00:00:10")
Application.OnTime altern, "AlternaPlans"
ThisWorkbook.Sheets(i).Activate
If i < Sheets.Count Then
i = i + 1
Else: i = 1
End If
End With
Application.ScreenUpdating = True
End Sub

Sub DeslAlterna()
On Error Resume Next
Application.OnTime earliesttime:=altern, procedure:="AlternaPlans", schedule:=False
MsgBox "Apresentação Desligada", vbInformation, "Status"
End Sub
Por osvaldomp
#52684
viewtopic.php?f=12&t=11628&p=52616#p52616

Seguem algumas ideias não testadas pois eu não disponho de dois monitores. Teste uma por vez e veja se aproveita alguma.
Monitor1 ~~~> arquivo de trabalho
Monitor2 ~~~> apresentação
##############################################################################################################################
1. se o arquivo aberto no Monitor1 for sempre o mesmo então coloque no final do código um comando para reativá-lo pelo nome
Application.ScreenUpdating = True
Workbooks("MeuArquivo.xlsm").Activate
End Sub

##############################################################################################################################
2. se o arquivo aberto no Monitor1 não for sempre o mesmo então coloque uma caixa de mensagem no início do código para capturar qual é o arquivo ativo.
Sub AlternaPlans()
MsgBox ActiveWorkbook.Name

e se o arquivo retornado como ativo for o do Monitor1 então atribua o arquivo ativo a uma variável e reative-o ao final do código (remova a MsgBox do código)
Sub AlternaPlans()
Dim wb as Workbook
Set wb = ActiveWorkbook
...
...
...
Application.ScreenUpdating = True
wb.Activate
End Sub

##############################################################################################################################
3. se o arquivo aberto no Monitor1 for único e for aberto sempre depois do arquivo do Monitor2, então tente o comando abaixo para reativá-lo
Application.ScreenUpdating = True
Workbooks(Workbooks.Count).Activate
End Sub

###############################################################################################################################
4. abra uma instância do Excel para cada monitor
###############################################################################################################################
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord