Cách đây vài ngày, một độc giả đã hỏi về cách tự động tạo bản trình bày PowerPoint từ đầu và sau đó nhanh chóng thêm các trang trình bày vào bản trình bày hiện có đó. Tôi mặc dù tập lệnh đó có thể nằm trong danh sách các Macro PowerPoint hữu ích nhất.
Như chúng tôi đã chỉ ra trước đây, PowerPoint không bao gồm Trình ghi Macro (không giống như Excel và Word, cả hai đều được tích hợp sẵn trình ghi cho Macro). Do đó, chúng ta còn lại Visual Basic for Application cũ tốt mà chúng ta có thể sử dụng để tạo các Macro đơn giản nhằm tự động hóa PowerPoint. Có nhiều lựa chọn thay thế khác cho PowerPoint Automation, nhưng những lựa chọn đó vượt ra ngoài phạm vi của hướng dẫn này.
Trong hướng dẫn ngắn ngày hôm nay, chúng ta sẽ xem xét ba trường hợp sử dụng khác nhau:
- Tạo bản trình bày mới (trống hoặc sử dụng mẫu)
- Thêm trang trình bày vào bản trình bày hiện có.
- Sự kết hợp của hai trường hợp được đề cập ở trên (Tạo từ đầu và bổ sung trang trình bày)
Bắt đầu nào.
Nhìn vào thanh Ribbon. Nếu bạn không thấy mục Nhà phát triển trong menu, trước khi bắt đầu viết mã, bạn cần bật tab nhà phát triển.
Sau khi bạn làm cho menu Nhà phát triển hiển thị Ruy-băng của mình, hãy tiếp tục và nhấn vào Nhà phát triển , sau đó nhấn vào nút Visual Basic (hoặc chỉ cần tiếp tục và nhấn Alt + F11) để mở Visual Basic IDE.
VBA để tạo bản trình bày PowerPoint
- Trong VB Editor, nhấp chuột phải vào VBAProject và nhấn Insert .
- Chọn Mô-đun .
- Dán mã sau vào mô-đun mới tạo.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
- Nhấn vào Tệp và sau đó nhấn Lưu.
- Để chạy mã của bạn, hãy nhấn Run và sau đó chọn Run Sub / User Form (hoặc đơn giản là F5).
- Đóng trình soạn thảo VB.
VBA để chèn các trang trình bày
- Trong VB Editor, nhấp chuột phải vào VBAProject và nhấn Insert.
- Chọn mô-đun
- Dán mã sau vào mô-đun mới tạo.
Sub CreateSlide()
Dim NewSlide as Slide
'This statement ads a title slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
End Sub
- Nhấn vào Tệp và sau đó nhấn Lưu.
- Để chạy mã của bạn, hãy nhấn Run và sau đó chọn Run Sub / User Form (hoặc đơn giản là F5).
- Đóng trình soạn thảo VB.
Macro để thiết lập một bản trình bày mới và thêm các trang trình bày
Đó sẽ chỉ là sự trộn lẫn hai đoạn trích được nêu ở trên.
Sub CreatePres_AddSlides()
Dim NewPres as Presentation
Dim NewSlide as Slide
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
' Title Slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
'Save the new PowerPoint file
NewPres.SaveAs("MyPresentation.pptx")
End Sub
Tiếp theo, bạn có thể xem hướng dẫn của chúng tôi về cách tạo hình dạng theo chương trình trong PowerPoint với VBA
Tạo bản trình bày PowerPoint từ Excel
Trường hợp cuối cùng là bạn muốn tạo bản trình bày PowerPoint ngay từ bảng tính Excel. Bạn có thể sử dụng kỹ thuật tương tự từ Word và các Ứng dụng Microsoft 365 khác.
- Liên kết Bảng tính với Mô hình Dữ liệu PowerPoint (từ Công cụ >> Tham khảo)
- Chèn một nút vào bảng tính Excel của bạn (Nhà phát triển >> Chèn và sau đó chọn một Nút lệnh).
- Chèn mã VBA bên dưới vào Dự án VBA trên Bảng tính của bạn (trực tiếp vào Trang tính hoặc vào Mô-đun VBA)
- Sửa đổi tập lệnh theo yêu cầu.
- Chạy (nhấn F5) và kiểm tra kết quả.
Sub CreatePresentationFromExcel()
Dim MyPPt As PowerPoint.Application
Dim NewPres As PowerPoint.Presentation
Dim NewSlide As Slide
Set MyPPt = CreateObject("PowerPoint.Application")
Set NewPres = MyPPt.Presentations.Add
Set NewSlide = MyPPt.ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
NewPres.SaveAs ("MyPresentation.pptx")
NewPres.Close
MyPPt.Quit
MsgBox ("Presentation saved")
End Sub
Thưởng thức 🙂
Ưu điểm của Excel VBA PowerPoint
- Sử dụng VBA trong Powerpoint giúp bạn dễ dàng xử lý khi một file ppt có quá nhiều slide với nội dung khổng lồ.
- VBA với Powerpoint mang lại cảm giác tự động hóa ngay cả khi có sẵn một số chức năng hạn chế.
Nhược điểm của Excel VBA PowerPoint
- Chúng ta cần chọn Thư viện đối tượng Microsoft PowerPoint 15.0 từ tùy chọn Tham chiếu nằm trong tùy chọn menu Công cụ mà chúng ta cần khi bắt đầu ví dụ-1, mỗi khi chúng tôi chạy mã cho PowerPoint.
Những điều cần ghi nhớ
- Lưu tệp ở định dạng Bản trình bày Kích hoạt Macro sau khi viết mã. Điều này sẽ giúp chúng ta tránh bị mất mã và sử dụng cùng một lần nhiều lần trong tương lai.
- Tính năng Recoding sẽ không hoạt động ở đây vì chúng ta cần chuyển từ Excel sang PowerPoint để thay đổi giao diện giữa các trang.
- Luôn biên dịch mã trước khi chạy. Điều này sẽ giúp bạn tìm ra lỗi trong mã. Điều này khá hữu ích khi chúng ta viết những dòng mã lớn.
- Để chạy và triển khai code chúng ta cần mở bảng excel có Chart mà chúng ta muốn dán vào slide PowerPoint.
- Chúng ta có thể căn chỉnh biểu đồ trong PowerPoint theo nhu cầu của mình.