Cách đổi vị trí thứ tự xuất hiện slide ngẫu nhiên PowerPoint

Powerpoint là một trong những ứng dụng thiết trình tốt nhất được nhiều người dùng lựa chọn với các cách làm slide đẹp mắt. Nhưng đôi khi, bạn muốn tạo thêm một số yếu tố bất ngờ trong bài thuyết trình của mình bằng cách xáo trộn các slide một cách ngẫu nhiên. Ví dụ: Bạn muốn tạo một bài thiết trình cho học sinh và muốn xáo trộn tất cả các thẻ ghi chú lại với nhau. Tuy nhiên, Powerpoint không có tính năng tích hợp sẵn cho việc nay nhưng bạn có thể lựa chọn cách sử dụng Macro. Bài viết dưới đây, Tekzone sẽ hướng dẫn cho bạn cách xáo trộn các trang trình bày theo cách thủ công và cách sử dụng mã VBA để tự động hóa quy trình xáo trộn ngẫu nhiên. Cùng tìm hiểu ngay dưới đây nhé!

1. Cách xáo trộn thủ công các slide trong PowerPoint

Trong Microsoft PowerPoint, bạn có thể xáo trộn thủ công các trang chiếu trong bài thuyết trình của mình để hiển thị chúng theo thứ tự ngẫu nhiên bằng cách sử dụng chế độ xem “Slide Sorter”. Mặc dù phương pháp này có thể không ngẫu nhiên như sử dụng macro nhưng nó vẫn cho phép bạn sắp xếp lại các slide theo một thứ tự khác.

Để xáo trộn và sắp xếp ngẫu nhiên các slide trong bài thuyết trình PowerPoint theo cách thủ công thì hãy làm theo các bước bên dưới.

Mở bài thuyết trình PowerPoint và chuyển đến tab View trong menu ruy-băng ở đầu màn hình. Bấm vào nó để truy cập menu View .

Quảng cáo

Trong menu View , tìm nhóm Chế độ xem bài thuyết trình và chọn tùy chọn Slide Sorter. Thao tác này sẽ chuyển bài thuyết trình sang chế độ xem Slide Sorter, nơi bạn có thể xem tất cả các hình thu nhỏ của trang chiếu cùng một lúc.

Trong chế độ xem Slide Sorter, bạn có thể thấy hình thu nhỏ lớn hơn của các trang chiếu. Nếu bạn có nhiều slide trong bài thuyết trình của mình, hãy nhấp vào tùy chọn Zoom Out được biểu thị bằng  – icon ở thanh công cụ dưới cùng để có cái nhìn tổng quan hơn về tất cả các slide. Tiếp tục nhấp vào nó cho đến khi bạn có thể xem tất cả các slide trong bài thuyết trình trên màn hình cùng một lúc.

Giờ đây, bạn có thể dễ dàng xáo trộn các slide bằng cách nhấp vào slide và kéo nó đến vị trí ngẫu nhiên trên màn hình. Lặp lại bước này với các slide khác để xáo trộn chúng một cách ngẫu nhiên. Tiếp tục sắp xếp lại các slide cho đến khi bạn hài lòng với thứ tự mới.

Quảng cáo

Hãy nhớ rằng phương pháp này không đảm bảo thứ tự hoàn toàn ngẫu nhiên vì nó phụ thuộc vào sự sắp xếp thủ công. Nếu bạn muốn xem một trang chiếu hoàn toàn ngẫu nhiên xuất hiện sau khi nhấn nút để hiển thị trang chiếu tiếp theo, bạn có thể sử dụng phương pháp macro VBA để xáo trộn ngẫu nhiên tự động và chính xác hơn.

2. Cách sắp xếp ngẫu nhiên các slide PowerPoint bằng mã VBA

Để đảm bảo các slide PowerPoint hiển thị theo thứ tự hoàn toàn ngẫu nhiên, bạn sẽ cần sử dụng một chút mã hóa. Tùy chọn Macro trong Microsoft Office PowerPoint cho phép bạn chạy mã VBA để tự động xáo trộn các slide trong bài thuyết trình của mình.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách xáo trộn các slide mà không bị trùng lặp. Để sắp xếp ngẫu nhiên các slide trong PowerPoint sao cho cùng một slide không lặp lại, hãy làm theo các bước dưới đây.

Để bắt đầu, bạn cần truy cập vào tab Developer trên menu ribbon PowerPoint của mình. Để làm điều đó, hãy đi theo đường dẫn File > Options hoặc nhấp chuột phải vào bất kỳ khoảng trống nào trong menu ribbon và chọn Customize the Ribbon. Điều này sẽ mở một hộp thoại.

Trong hộp thoại PowerPoint Options, cuộn xuống cho đến khi bạn tìm thấy tùy chọn Developer. Chọn hộp bên cạnh Developer và nhấp vào OK .

Bây giờ chọn tab Developer và chọn Macros. Trong cửa sổ bật lên, bạn có thể chèn Macro mới. Chọn tên cho nó (ví dụ: Shuffleslides) và nhấp vào Create để tiếp tục.

Thao tác này sẽ mở cửa sổ Visual Basic Editor , nơi bạn có thể nhập mã để sắp xếp ngẫu nhiên các trang trình bày PowerPoint của mình.

Quảng cáo

Sao chép mã VBA sau và dán vào cửa sổ Visual Basic đang mở.

Sub Shuffleslide()

FirstSlide = 2

LastSlide = 5

Randomize

‘generate a random no between first slide and last slide’

GRN:

Quảng cáo

RSN = Int((LastSlide – FirstSlide + 1) * Rnd + FirstSlide)

If RSN = ActivePresentation.SlideShowWindow.View.Slide.SlideIndex Then GoTo GRN

ActivePresentation.SlideShowWindow.View.GotoSlide (RSN)

End Sub

Sau khi dán mã, bạn sẽ nhận thấy rằng cài đặt mặc định sẽ xáo trộn các trang trình bày từ 2 đến 5. Tuy nhiên, bài thuyết trình có thể không có đúng 5 trang trình bày nhưng điều đó không thành vấn đề. Bạn có thể dễ dàng tùy chỉnh phần mã này cho phù hợp với nhu cầu của mình.

Trong Phần mềm chỉnh sửa VBA, hãy điều chỉnh số trang chiếu theo “FirstSlide” và “LastSlide” để chỉ định phạm vi trang chiếu bạn muốn đưa vào danh sách phát ngẫu nhiên. Theo mặc định, việc xáo trộn bắt đầu từ slide 2 để tránh bao gồm slide tiêu đề. Nếu bạn muốn loại trừ các slide tiêu đề khỏi bị xáo trộn, hãy giữ nguyên “FirstSlide = 2”.

Ví dụ: giả sử bạn có một bài thuyết trình có mười trang chiếu và bạn muốn bỏ qua việc xáo trộn trang chiếu tiêu đề. Trong trường hợp đó, hãy đặt “FirstSlide = 2” và “LastSlide = 10”. Bằng cách này, chỉ các trang trình bày từ 2 đến 10 sẽ được đưa vào quá trình xáo trộn và trang trình bày tiêu đề sẽ không bị ảnh hưởng.

Quảng cáo

Bây giờ bạn đã hoàn thành và tùy chỉnh mã cho bài thuyết trình của mình, đã đến lúc thêm các nút hành động vào các trang chiếu. Để làm điều đó, hãy chèn bất kỳ hình dạng nào vào slide đầu tiên (hoặc bất kỳ slide nào bạn thích), sau đó chọn hình dạng đó và điều hướng đến Insert > Action > Run Macro. Sau đó chọn Macro bạn vừa tạo. Điều này sẽ kích hoạt tính năng xáo trộn các trang chiếu trong Chế độ trình chiếu, mang lại trải nghiệm hấp dẫn cho khán giả .

Lưu tệp PowerPoint  ở format PPTM (bài thuyết trình hỗ trợ Macro) để giữ lại các Macro bạn đã tạo. Chọn File > Save As và chọn PPTM từ danh sách thả xuống để đảm bảo rằng các macro bạn đã tạo sẽ được giữ nguyên và không bị mất.

Bây giờ hãy vào Chế độ trình bày và nhấp vào nút trên trang trình bày đầu tiên để xáo trộn các trang trình bày một cách ngẫu nhiên. Thưởng thức bài thuyết trình năng động và không lặp lại .

3. Cách xáo trộn các slide chẵn hoặc lẻ

Trong trường hợp bạn chỉ muốn xáo trộn các slide cụ thể trong bài thuyết trình của mình, chẳng hạn như các slide chẵn hoặc lẻ, bạn có thể sử dụng mã VBA sau để chỉ ngẫu nhiên hóa các slide được đánh số chẵn hoặc số lẻ mà không làm ảnh hưởng đến phần còn lại.

Để làm điều đó, hãy làm theo các bước ở trên cho đến khi bạn đến cửa sổ Visual Basic Editor và chèn đoạn mã sau.

Sub Shuffleslide()

EvenEvenShuffle = True (replace with false if only odd-numbered slides are shuffled)

Quảng cáo

FirstSlide = 2 (should be an even/odd number based on needs)

LastSlide = 8

Randomize

For i = FirstSlide To LastSlide Step 2

Generate: ‘generate a random no between first slide and last slide’

RSN = Int((LastSlide – FirstSlide + 1) * Rnd) + FirstSlide

If EvenShuffle = True Then

Quảng cáo

If RSN Mod 2 = 1 Then GoTo generate

Else

If RSN Mod 2 = 0 Then GoTo generate

End If

ActivePresentation.Slides(i).MoveTo (RSN)

If i < RSN Then ActivePresentation.Slides(RSN – 1).MoveTo (i)

If i > RSN Then ActivePresentation.Slides(RSN + 1).MoveTo (i)

Quảng cáo

Next i

End Sub

4. Cách xáo trộn các slide theo một vòng lặp không bao giờ kết thúc

Hướng dẫn ở trên trình bày cách xáo trộn các slide PowerPoint và phát chúng theo thứ tự ngẫu nhiên mà không lặp lại. Tuy nhiên, sau một vòng lặp, thứ tự xáo trộn tương tự vẫn được duy trì trừ khi bạn xáo trộn lại các slide.

Để tự động xem qua tất cả các trang chiếu theo vòng lặp vô tận trong chế độ trình chiếu với thứ tự ngẫu nhiên mới cho mỗi vòng lặp, bạn có thể sử dụng mã sau. Đảm bảo thay đổi các số sau FirstSlide = và LastSlide = để phù hợp với số lượng slide trong bài thuyết trình .

Vị trí công khai, phạm vi, AllSlides() dưới dạng số nguyên

Sub ShuffleAndBegin()

FirstSlide = 2

Quảng cáo

LastSlide = 6

Range = (LastSlide – FirstSlide)

ReDim AllSlides(0 To Range)

For i = 0 To Range

AllSlides(i) = FirstSlide + i

Next i

Randomize

Quảng cáo

For N = 0 To Range

J = Int((Range + 1) * Rnd)

temp = AllSlides(N)

AllSlides(N) = AllSlides(J)

AllSlides(J) = temp

Next N

Position = 0

Quảng cáo

ActivePresentation.SlideShowWindow.View.GotoSlide AllSlides(Position)

End Sub

Sub Advance()

Position = Position + 1

If Position > Range Then

ShuffleAndBegin

Else

Quảng cáo

ActivePresentation.SlideShowWindow.View.GotoSlide AllSlides(Position)

End If

End Sub