Đổi thay font chữ hàng loạt trong PowerPoint bằng VBA

lúc làm việc có slide PowerPoint, đa dạng khi ta gặp tình trạng các ô chữ cộng một chức năng nhưng lại sở hữu định dạng khác nhau: khác font chữ, khác màu, khác kích cỡ… Lý do cho việc này đến từ nhiều cội nguồn, thường là do ta copy từ ngoài vào, hoặc khi phổ biến người cùng khiến việc trên một file to. Bởi vậy trong bài viết này Học Excel Online sẽ chia sẻ cho bạn một đoạn code VBA siêu ngắn để đổi thay font chữ hàng loạt trong PowerPoint. Đoạn code này cũng mang thể được vận dụng để thay đổi những định dạng khác như màu sắc, kích cỡ, màu nền…

Bởi đây là bài viết giới thiệu 1 ứng dụng nhanh nên tác giả sẽ không đi quá sâu vào phân tách. Chi tiết về VBA trong PowerPoint sẽ mang trong các bài viết tiếp theo

thay đổi font chữ hàng loạt trong PowerPoint tiêu dùng VBA

ví thử ta có 1 file PowerPoint như sau. Sở hữu ví dụ này ta sẽ đổi font chữ của tiêu đề trong khoảng Calibri Light (Headings) thành Times New Roman.

Trước khi tiến hành thao tác trong cửa sổ VBE, ta cần xác định định được đối tượng ta làm việc cộng.

trước nhất, ta click chọn vào tiêu đề, chọn vào thẻ Home, chọn Arrange, chọn Selection Pane…

Tại thanh vừa xuất hiện bên lề phải, ta quan tâm cụm "Title 1" đã được tô đậm. Đó là tên của hình khối mà ta sẽ làm cho việc cộng.

Thay đổi font chữ hàng loạt trong PowerPoint

Bởi mục đích của bài viết là đổi thay font chữ hàng loạt, nên hãy đảm bảo phần nhiều các đối tượng tiêu đề đều được đặt cùng 1 tên (Title 1)

Trong trường hợp muốn đổi tên, ta click đúp vào tên của đối tượng trong thanh (trong tỉ dụ này là Title 1) và nhập tên mới vào.

Sau khi xác định được tên đối tượng, ta tiến hành mở cửa sổ Visual Basic Editor trong thẻ Developer (phím tắt Alt + F11). Trong trường hợp bạn vẫn chưa biết thẻ Developer ở đâu, hãy xem bài viêt này. Tại cửa sổ VBE, ta chọn Insert -> Module và copy đoạn code dưới đây.

Code của chúng ta như sau:

Sub test()
Dim sld As Slide
For Each sld In Application.ActivePresentation.Slides
sld.Shapes("Title 1").TextFrame.TextRange.Font.Name = "Times New Roman"
Next sld
End Sub

Sau lúc gán vào trong cửa sổ, ta ấn Run Sub/Userform (phím tắt F5) để chạy đoạn code. Quay trở lại file PowerPoint và xem sự đổi thay.

giải thích

Để tầm nã cập và khiến cho việc mang đối tượng tiêu đề, cụ thể là "Chữ trong tiêu đề" ta đi theo tầng như sau:

Hiểu một phương pháp đơn giản, ta sẽ truy nã cập theo trình tự: áp dụng -> Bản trình chiếu -> Slide -> Khối, hình vẽ -> sườn chữ trong hình vẽ -> Vùng chữ và rốt cuộc là Font, Font Name

trước tiên, ta gán biến sld cho đối tượng Slide.

Tiếp theo đó, vòng lặp For each… Next sẽ lặp qua từng slide (biến sld) trong những slide ( Application.ActivePresentation.Slides).

Ở bên trong vòng lặp, ta xác định Shape cần thao tác là "Title 1". Tiếp theo là TextFrame.TextRange như trên hình minh họa.

sau cùng, đối tượng ta cần thao tác là Font, cụ thể là Font Name. Ta viết vào .Font.Name. Và giá trị của Font Name là Times New Roman.

Ta hoàn toàn với thể đổi sang các font khác như Arial, Calibri…

Ta cũng sở hữu thể áp dụng như vậy sở hữu các thuộc tính khác như màu chữ, kiểu chữ, cỡ chữ… tỉ dụ trong trường hợp muốn đổi sang màu xanh dương ta sở hữu thể viết như sau:

sld.Shapes("Title 1").TextFrame.TextRange.Font.Color = vbBlue

Danh sách các màu mang thể được nhắc tới dưới dây:

Hoặc trong trường hợp số lượng màu này quá ít oi, ta có thể viết:

sld.Shapes("Title 1").TextFrame.TextRange.Font.Color = RGB(255, 255, 0)

Sau ấy bạn có thể kiếm tìm màu RGB theo ý muốn và thay số vào.

Kết quả rốt cuộc

Share on Google Plus
    Blogger Comment
    Facebook Comment

0 nhận xét:

Đăng nhận xét