Às vezes, você pode querer adicionar um elemento surpresa à sua apresentação do PowerPoint, embaralhando os slides aleatoriamente. Por exemplo, talvez você crie uma apresentação para seus alunos e queira embaralhar alguns ou todos os cartões.
Por padrão, o PowerPoint não possui um recurso integrado para isso, mas você pode fazer isso usando uma macro. Neste guia passo a passo, mostraremos como embaralhar slides manualmente e como usar um código VBA para automatizar o processo de embaralhamento aleatório.
Como embaralhar slides manualmente no PowerPoint
No Microsoft PowerPoint, você pode embaralhar manualmente os slides da sua apresentação para exibi-los em ordem aleatória usando a visualização “Classificador de slides”. Embora esse método possa não ser tão aleatório quanto usar macros, ele ainda permite reorganizar os slides em uma ordem diferente.
Para embaralhar e embaralhar manualmente os slides em uma apresentação do PowerPoint, siga as etapas abaixo.
Lembre-se de que esse método não garante uma ordem completamente aleatória, pois depende da sua organização manual. Se quiser ver um slide completamente aleatório aparecer depois de apertar o botão para mostrar o próximo slide, você pode usar o método de macros VBA para um embaralhamento aleatório mais preciso e automatizado..
Como randomizar slides do PowerPoint usando um código VBA
Para garantir que seus slides do PowerPoint sejam reproduzidos em uma ordem completamente aleatória, você precisará usar um pouco de codificação. A opção Macros no Microsoft Office PowerPoint permite executar códigos VBA para embaralhar automaticamente os slides da sua apresentação.
Neste tutorial, mostraremos como embaralhar seus slides sem duplicações. Para randomizar os slides no PowerPoint para que o mesmo slide não se repita, siga as etapas abaixo.
Sub Shuffleslides()
PrimeiroSlide = 2
ÚltimoSlide = 5
Randomizar
‘gerar um não aleatório entre o primeiro e o último slide’
GRN:
RSN = Int((ÚltimoSlide – PrimeiroSlide + 1) * Rnd + PrimeiroSlide)
Se RSN = ActivePresentation.SlideShowWindow.View.Slide.SlideIndex então vá para GRN
ActivePresentation.SlideShowWindow.View.GotoSlide (RSN)
Fim Sub
No Editor VBA, ajuste os números dos slides após “FirstSlide” e “LastSlide” para especificar o intervalo de slides que você deseja incluir na ordem aleatória. Por padrão, a ordem aleatória começa no slide 2 para evitar a inclusão do slide de título. Se você deseja excluir os slides do título da ordem aleatória, mantenha “FirstSlide = 2” como está..
Por exemplo, digamos que você tenha uma apresentação com dez slides e queira pular a ordem aleatória do slide do título. Nesse caso, defina “FirstSlide = 2” e “LastSlide = 10”. Dessa forma, apenas os slides 2 a 10 serão incluídos no processo de embaralhamento e o slide do título não será afetado.
Agora entre no modo de apresentação e clique no botão no primeiro slide para embaralhar seus slides aleatoriamente. Aproveite sua apresentação dinâmica e sem repetição.
Como embaralhar apenas slides pares ou ímpares
Caso você queira embaralhar apenas slides específicos em sua apresentação, como slides pares ou ímpares, você pode usar o seguinte código VBA para embaralhar apenas slides pares ou ímpares sem atrapalhar o resto.
Para fazer isso, siga as etapas acima até chegar à janela do Editor do Visual Basic e insira o código a seguir.
Sub Shuffleslides()
EvenShuffle = True (substitua por false se apenas slides ímpares forem embaralhados)
FirstSlide = 2 (deve ser um número par/ímpar com base nas necessidades)
ÚltimoSlide = 8
Randomizar
Para i = FirstSlide To LastSlide Etapa 2
Gerar: ‘gerar um não aleatório entre o primeiro e o último slide’
RSN = Int((ÚltimoSlide – PrimeiroSlide + 1) * Rnd) + PrimeiroSlide
Se EvenShuffle = True então
Se RSN Mod 2 = 1 Então GoTo gerar
Outra coisa
Se RSN Mod 2 = 0 Então GoTo gerar
Terminar se
ActivePresentation.Slides(i).MoveTo (RSN)
Se i
Se i >RSN Então ActivePresentation.Slides(RSN + 1).MoveTo (i)
Próximo eu
End Sub
Como embaralhar seus slides em um loop sem fim
O tutorial acima demonstra como embaralhar slides do PowerPoint e reproduzi-los em ordem aleatória, sem repetição. No entanto, após um loop, a mesma ordem embaralhada é mantida, a menos que você embaralhe os slides novamente.
Para percorrer automaticamente todos os slides em um loop infinito durante o modo de apresentação de slides com uma nova ordem aleatória para cada loop, você pode usar o código a seguir. Certifique-se de alterar os números após FirstSlide = e LastSlide = para ajustar o número de slides da sua apresentação.
Posição pública, intervalo, AllSlides() como número inteiro
Sub ShuffleAndBegin()
PrimeiroSlide = 2
ÚltimoSlide = 6
Intervalo = (ÚltimoSlide – PrimeiroSlide)
ReDim AllSlides (0 até o intervalo)
Para i = 0 até o intervalo
TodosSlides(i) = PrimeiroSlide + i
Próximo eu
Randomizar
Para N = 0 até o intervalo
J = Int((Intervalo + 1) * Rnd)
temp = Todos os slides(N)
TodosSlides(N) = TodosSlides(J)
Todos os slides(J) = temp
Próximo N
Posição = 0
ActivePresentation.SlideShowWindow.View.GotoSlide AllSlides(Posição)
Finalizar sub
Sub Avanço()
Posição = Posição + 1
Se Posição >Intervalo Então
ShuffleAndBegin
Outro
ActivePresentation.SlideShowWindow.View.GotoSlide AllSlides(Posição)
Terminar se
End Sub